我正在使用get_results来获取包含数据的数组。在此数据中有帖子ID。当我尝试检索带有帖子ID的图像时,我没有检索到图像。有什么想法吗?
这是我的代码。
首先,我在functions.php中添加下一个代码
/**
* Check to see if the function exists
* It is always a good practice to avoid any version conflict
*/
if(function_exists('add_theme_support'))
{
/** Exists! So add the post-thumbnail */
add_theme_support('post-thumbnails');
/** Now Set some image sizes */
/** #1 for our featured content slider */
add_image_size( $name = 'itg_featured', $width = 500, $height = 300, $crop = true );
/** #2 for post thumbnail */
add_image_size( 'itg_post', 250, 250, true );
/** #3 for widget thumbnail */
add_image_size( 'itg_widget', 40, 40, true );
add_image_size('projects_single',160,160, true);
add_image_size('post',592,auto,true);
add_image_size('post-mini',152,auto,true);
}
在显示图像的文件中,我有下一个代码。
<?php
global $post,$wpdb;
$table = $wpdb->prefix.'posts';
$query = "SELECT * FROM $table WHERE post_type='startups' and post_status='publish' order by post_date desc limit 0,1; ";
$result = $wpdb->get_results($query);
?>
(这完全可以检索数据)。
现在,我做了一个foreach,用于检索行到行的数据。
foreach ($result as $key) {
//retrieve post ID
$idpost = $key->ID;
//this line retrieve information to post_type
$infostartup = get_post_meta($key->ID,array());
//retrieve Image ID
$imageid = get_post($infostartup['startup_photo'][0]);
//Now I'm trying display image of post
echo get_the_post_thumbnail($idpost);
//this not display the image
also I try using image ID but not display image.
echo get_the_post_thumbnail($imageid);
}
有什么想法吗?
答案 0 :(得分:6)
如果您有图像ID,则需要使用wp_get_attachment_image_src($ imageid,'itg_post')或您想要的任何图像尺寸。
我也不知道为什么你在使用SQL查询时可以进行WordPress查询。以下是使用WP_Query的方法:
$args = array(
'post_type' => 'startups',
'posts_per_page' => -1
);
$loop = new WP_Query( $args );
if( $loop->have_posts() ): while( $loop->have_posts() ): $loop->the_post();
global $post;
echo get_the_post_thumbnail( $post->ID, 'image_size' );
endwhile; endif;
wp_reset_postdata();