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

时间:2015-03-06 01:14:55

标签: php wordpress post categories posts

我是PHP编码的新手,我正试图从特定类别发布此部分输出帖子,比如" Events"。我尝试过查看不同的示例,但无法找到符合此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 } ?>

任何见解或方向都将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,我建议您从模板中分配逻辑。这有助于您更好地理解代码。

现在,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; ?>

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