使用PHP为帖子的特定类别创建输出


Create Output using PHP for Specific Category of a Post

我是PHP编码的新手,正试图让这一部分从一个特定的类别输出,比如"事件"。我试着看了不同的例子,但没有找到任何适合这个PHP模板编码的东西。我想这只是我缺少的一个简单的补充。

这是我目前的代码:

<?php $args=array( 'posts_per_page'=> 3, 'post_type' => 'post'); $myposts = get_posts( $args ); foreach ($myposts as $post) { ?>
                  <?php $content=$post->post_content; ?>
                  <?php $contnt=substr($content, 0, 150);?>
                  <?php if(has_post_thumbnail()){ ?>
                  <p>
                  <div style="float: left; margin-right: 30px;margin-bottom:10px; width:113px">
                    <?php the_post_thumbnail(); ?>
                  </div>
                  </p>
                  <?php } else { ?>
                  <img src="<?php echo site_url();?>/wp-content/uploads/2014/10/noimageavailable2.jpg" style="float: left; margin-right: 30px;margin-bottom:10px; width:113px">
                  <?php } ?>
                  <h4> <a href="<?php the_permalink(); ?>">
                    <?php the_title(); ?>
                    </a></h4>
                  <p>
                    <?php the_excerpt();?>
                    .....</p>
                  <hr class="line-dots clearbreak">
                  <?php } ?>

任何见解或指导都将不胜感激。

谢谢!

首先,我建议您从模板中提取逻辑。这将帮助您更好地理解代码。

现在,php有了一个模板语法。我可以这样翻译你的代码:

<?php
$args=array( 'posts_per_page'=> 3, 'post_type' => 'post');
$myposts = get_posts( $args );
foreach ($myposts as $post): ?>
    <?php if(has_post_thumbnail()): ?>
    <p>
        <div style="float: left; margin-right: 30px;margin-bottom:10px; width:113px">
        <?php the_post_thumbnail(); ?>
        </div>
    </p>
    <?php else: ?>
    <img src="<?php echo site_url();?>/wp-content/uploads/2014/10/noimageavailable2.jpg" style="float: left; margin-right: 30px;margin-bottom:10px; width:113px">
    <?php endif; ?>
    <h4><a href="<?php the_permalink(); ?>">
        <?php the_title(); ?>
    </a></h4>
    <p><?php the_excerpt();?></p>
    <hr class="line-dots clearbreak">
    <?php endif; ?>
<?php endforeach; ?>

现在看起来更容易理解了,不是吗?