PHP внутри оператора PHP if else - wordpress - PullRequest
0 голосов
/ 06 ноября 2011

Я в основном хочу показать какой-нибудь php, если он находится внутри работы с категориями, я знаю, как сделать оператор if else и вывод php самостоятельно, но не совсем уверен, как объединить эти два, если бы кто-то мог просветить меня, это было бы быть высоко ценится. Основной код ниже, я думаю, мне не разрешено иметь <?php inside a <?php?

Большое спасибо!

<?php // Outputting related work if in work category
  if ( in_category( 'work' )) { 
    echo "

    <section class='work'>

      <h2>Also of interest</h2>

      <?php query_posts('category_name=work&posts_per_page=3&order=DSC&offset=1&orderby=ID'); 
        if (have_posts()) : while (have_posts()) : the_post(); ?>

      <article>
        <a href='<?php the_permalink() ?>'>
          <?php the_post_thumbnail();?>
          <h3><?php the_title(); ?></h3>
          <span>Redesign</span>
          <?php the_excerpt($strip_teaser); ?>
        </a>
      </article>

      <?php endwhile; endif; wp_reset_query();?>

      <a class='all' href='/work'>&rarr; View all work</a>

    </section> <!-- end work -->
";
}
?>

Ответы [ 3 ]

1 голос
/ 06 ноября 2011

PHP является языком шаблонов, используйте его следующим образом:

<?php // Outputting related work if in work category
  if ( in_category( 'work' )) { 
?>

    <section class='work'>

      <h2>Also of interest</h2>

      <?php query_posts('category_name=work&posts_per_page=3&order=DSC&offset=1&orderby=ID'); 
        if (have_posts()) : while (have_posts()) : the_post(); ?>

      <article>
        <a href='<?php the_permalink() ?>'>
          <?php the_post_thumbnail();?>
          <h3><?php the_title(); ?></h3>
          <span>Redesign</span>
          <?php the_excerpt($strip_teaser); ?>
        </a>
      </article>

      <?php endwhile; endif; wp_reset_query();?>

      <a class='all' href='/work'>&rarr; View all work</a>

    </section> <!-- end work -->
<?php
}
?>

Код, который не заключен в теги <?php ?>, выводится в браузере как есть.Каждый раз, когда веб-сервер обнаруживает начальный тег <?php, он передает управление интерпретатору PHP, который затем выполняет код, заключенный в эти теги.

0 голосов
/ 06 ноября 2011

То, что вы в основном должны сделать, это:

$str = "Let's output some HTML here <h1>";
while ($x) {
   $str .= "This is my ";
}
$str .= "title</h1>";
echo $str;

Таким образом, вы просто ломаете $str и затем используете оператор конкатенации .

0 голосов
/ 06 ноября 2011

Вы помещаете php-теги в оператор echo, если вы хотите поместить цикл while в какой-то текст, я бы прекратил de echo с ";, сделайте ваш цикл while таким, чтобы while(hava_posts()) { между ними вы повторяли вашу статьюкак echo "<article></article>";, тогда вы закрываете свое время с помощью скобки } и вызываете функцию wp_reset_query();.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...