我可以为帖子做这个吗?
我收到了最多的帖子,我正在显示这些帖子的缩略图(特色图片)。如果它们存在的话。
我现在要做的是,如果特色图片不存在,则显示类别图像。
有人可以帮我这个吗?
我现在有这个:
<?php
$args = array( 'numberposts' => '5' );
$recent_posts = wp_get_recent_posts($args);
$category = get_the_category();
foreach( $recent_posts as $recent ){
if($recent['post_status']=="publish"){
if ( has_post_thumbnail($recent["ID"])) {
echo '<a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . get_the_post_thumbnail($recent["ID"], 'thumbnail').'<div class="browse_category_name"> ' . $recent["post_title"]. '<div> ' . get_the_author_meta('display_name', $recent["post_author"]). '</div></div></a></li> ';
} else{
echo '<a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . get_categories_with_images($post->ID,' ,') . $recent["post_title"].'</a></li> ';
}
}
}
?>
这是我的 functions.php:
function get_categories_with_images($post_id,$separator ){
//first get all categories of that post
$post_categories = wp_get_post_categories( $post_id );
$cats = array();
foreach($post_categories as $c){
$cat = get_category( $c );
$cat_data = get_option("category_$c");
//and then i just display my category image if it exists
$cat_image = '';
if (isset($cat_data['img'])){
$cat_image = '<img src="'.$cat_data['img'].'">';
}
$cats[] = $cat_image . '<a href="'.get_category_link( $c ) . '">' .$cat->name .'</a>';
}
return implode($separator , $cats);
}
问题:即使未设置缩略图/精选图像,也不会显示类别图像。
答案 0 :(得分:0)
在你的函数中,你传递了错误的变量 - 没有$post
。只需将其更改为$recent["ID"]
,就像您之前获得的一样。