我正在处理的代码位于 content-front-page.php 上的 27 岁儿童主题中。我试图让每个类别(我有三个类别)中最新帖子的特色图片以某种方式显示。如下图所示:
最初,在每个彩色块中。我在一个 php 块中有这个:<?php
$recentport = new WP_Query(array('category_name' => 'ports-and-terminals', 'numberposts'=> 1, 'posts_per_page'=> 1));
while($recentport->have_posts()): $recentport->the_post();
$urlp = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'thumbnail' );
?>
<div style="height: 250px; position: relative">
<div style="height:inherit; background: url('<?php echo $urlp;?>'); background-size:cover; "> <!--i-->
<div id="img-overlay" style="height: inherit; background: linear-gradient(#0000ff, #000066); opacity: .7;">
</div>
<span class="feat-title-link">
<a href="<?php the_permalink(); ?>">
<?php the_title_limit(75, '...'); ?>
</a>
</span>
</div>
</div>
<?php
endwhile;
wp_reset_postdata();
?>
使用上述代码填充的特色图像。如果我在 wordpress 中添加新帖子并将其设置为使用上述代码的类别,则新帖子将出现在设置类别的下方或上方,例如:
那不是我想要的。我想保留第一张图片中的布局。所以......我将一个颜色块中的代码更改为这个来测试:<?php
$args = array('category_name' => 'ebusiness', 'numberposts'=>'1');
$recentcust = wp_get_recent_posts($args);
foreach( $recentcust as $post ){
$linkid = get_permalink($post["ID"]);
$thumb_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'thumbnail' );
$thumb_url = $thumb_url[0];
echo '<a href="' . $linkid . '">' .$post["post_title"].'</a>';
echo (!empty($thumb_url)) ? $thumb_url : 'No thumb!';
}
wp_reset_query();
//$recentebiz = new WP_Query(array('category_name' => 'ebusiness', 'post_per_page'=>1));
//while($recentebiz->have_posts()): $recentebiz->the_post();
//$url = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'thumbnail' );
?>
<div id="recentebiz-tile" style="background: url('<?php echo $thumb_url;?>');">
</div>
上面的代码不会填充每个类别中最近帖子的特色图片。因此,我的问题。这是我的逻辑:
- $args = 数组();:
$args
变量保存下一行的参数。 - $recentcust = wp_get_recent_posts($args):
$recentcust
变量保存*wp_get_recent_posts*
使用我的参数集的查询结果。 - foreach( $recentcust as $post ){}循环遍历结果并将它们分成
$post.
- 在
foreach(){}
循环内部:$linkid = get_permalink($post["ID"]) :$linkid
是带有 $post ID 的链接。 - 在
foreach(){}
循环内部:$thumb_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'thumbnail' )$post
:获取与's ID关联的特色图像? - 在
foreach(){}
循环内部:$thumb_url = $thumb_url[0]:获取第一张图片(数组位置为 0)? - 在循环之外
foreach(){}
: echo $thumb_url[0]显示特色图像。
但它没有显示它。我希望特色图像显示在每个代码块中。我知道我正在努力解决这个问题,但我想知道代码和 Wordpress 是如何工作的。我错过了什么吗?提前致谢。
我使用的资源是提供以下代码: