php wordpress通过id获取帖子,并在每页上制作特色部分

php wordpress通过id获取帖子,并在每页上制作特色部分,php,wordpress,Php,Wordpress,我最近刚刚编写了一个特色部分,它实际上会将文章拉到数组中指定的位置。这是密码 <div class="container_24"> <ul id="featured_posts" class="grid_24"> <?php $thePostIdArray = array("13968","14293", "15018", "15512"); ?> <?php $limit = 4 ?> <?php if (have_posts()) :

我最近刚刚编写了一个特色部分,它实际上会将文章拉到数组中指定的位置。这是密码

<div class="container_24">
<ul id="featured_posts" class="grid_24">

<?php $thePostIdArray = array("13968","14293", "15018", "15512"); ?>
<?php $limit = 4 ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); $counter++; ?>
<?php if ( $counter < $limit + 1 ): ?>

<?php $post_id = $thePostIdArray[$counter-1]; ?>
<?php $queried_post = get_post($post_id); ?>
 <li class="featured_post">
    <div class="featured_thumbnail"> <a href="<?php echo get_permalink( $post_id ); ?>"><img width="55" height="55" src="<?php echo img_feature($post_id) ?>" class="attachment-featured-small wp-post-image" alt="<?php echo $queried_post->post_title; ?>"></a></div>
    <div class="featured_title">
      <h2><a href="<?php echo get_permalink( $post_id ); ?>"><?php echo $queried_post->post_title; ?></a></h2>
    </div>
  </li>

<?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>

</ul>
</div>

现在,该代码在
主页
存档
和任何有
帖子
循环的页面上都能完美地工作,并按其设想显示
4
特色帖子,但是这个问题不会出现在任何其他没有
post
循环的页面上,比如
single.php
联系人页面
,以及任何其他没有post的页面上

我不知道我是否做错了上面的任何事情,我已经在
标题
中包含了这一点,该标题假设显示在所有包含
标题
的页面上,问题是只显示第一个,而不显示其余的,就像循环只运行一次并停止一样

如果我做错了什么,请指出我


谢谢

使用下面这样的foreach循环

<div class="container_24">
<ul id="featured_posts" class="grid_24">

<?php $thePostIdArray = array("13968","14293", "15018", "15512"); ?>
<?php foreach ($thePostIdArray as $post_id) : ?>
    <?php $queried_post = get_post($post_id); ?>
     <li class="featured_post">
        <div class="featured_thumbnail"> <a href="<?php echo get_permalink( $post_id ); ?>"><img width="55" height="55" src="<?php echo img_feature($post_id) ?>" class="attachment-featured-small wp-post-image" alt="<?php echo $queried_post->post_title; ?>"></a></div>
    <div class="featured_title">
        <h2><a href="<?php echo get_permalink( $post_id ); ?>"><?php echo $queried_post->post_title; ?></a></h2>
    </div>
  </li>
 <?php endforeach; ?>

</ul>
</div>


使用如下所示的foreach循环

<div class="container_24">
<ul id="featured_posts" class="grid_24">

<?php $thePostIdArray = array("13968","14293", "15018", "15512"); ?>
<?php foreach ($thePostIdArray as $post_id) : ?>
    <?php $queried_post = get_post($post_id); ?>
     <li class="featured_post">
        <div class="featured_thumbnail"> <a href="<?php echo get_permalink( $post_id ); ?>"><img width="55" height="55" src="<?php echo img_feature($post_id) ?>" class="attachment-featured-small wp-post-image" alt="<?php echo $queried_post->post_title; ?>"></a></div>
    <div class="featured_title">
        <h2><a href="<?php echo get_permalink( $post_id ); ?>"><?php echo $queried_post->post_title; ?></a></h2>
    </div>
  </li>
 <?php endforeach; ?>

</ul>
</div>


这里的问题是,在访问单个.php等文件时,循环只运行一次,因为只有一篇文章。我建议使用foreach循环,而不是通过post-id数组进行循环。@Jrod我正在考虑在这种情况下如何实现
foreach
?真的很抱歉,我对php有点陌生,我刚开始学习php课程,就像两周前的问题一样。刚刚发布了一个例子。当您使用数组时,Foreach循环非常好。这里的问题是,在访问单个.php等时,循环只运行一次,因为只有一个post。我建议使用foreach循环,而不是通过post-id数组进行循环。@Jrod我正在考虑在这种情况下如何实现
foreach
?真的很抱歉,我对php有点陌生,我刚开始学习php课程,就像两周前的问题一样。刚刚发布了一个例子。使用数组时,Foreach循环非常好。是的!Foreach循环用于操纵数组。学会爱你的朋友,是的!Foreach循环用于操纵数组。学会爱你的朋友。