我已经搜索了一段时间,想找到一个解决方案,如何让帖子编辑器中的附加图像显示在仪表板中,但我遇到了一个问题。我已经了解了如何执行此操作,并且可以使用缩略图执行此操作:
function foo_attached_image( $post_ID ) {
$post_thumbnail_id = get_post_thumbnail_id( $post_ID );
if ( $post_thumbnail_id ) {
$post_thumbnail_img = wp_get_attachment_image_src( $post_thumbnail_id );
return $post_thumbnail_img[0];
}
}
但是缩略图已经被使用了,大小与我需要的不同。当我尝试修改我的函数时,包括
manage posts custom column 只拉图像,我似乎无法让它工作
wp_get_attachment_url()
:
function attached_image_content( $column_name, $post_ID ) {
if ( $column_name == \'foobar\' ) {
$post_attached_image = wp_get_attachment_url( $post_ID );
if ( $post_attached_image ) {
echo \'<img style="width:100%;" src="\' . $post_attached_image . \'" />\';
}
}
}
add_action( \'manage_cpt_posts_custom_column\', \'attached_image_content\', 10, 2 );
我试过
wp_get_attachment_image_src(
) 像
$post_attached_image = wp_get_attachment_image_src( $post_ID, \'medium\' );
还是没办法。如果我使用
get_intermediate_image_sizes()
我可以获得所有附加内容的数组,但由于某种原因,我似乎无法获得编辑器中加载的任何图像来显示。渲染第一个上载的图像(不包括缩略图)以使其显示在仪表板中的适当方式是什么?
SO网友:CK MacLeod
你需要的是附件ID,它与“缩略图ID”相同,而不是帖子ID。这很让人困惑。也许到了WP 5.0,他们会更新命名法!
因此,我认为这会起作用:
function attached_image_content( $column_name, $post_ID ) {
if ( $column_name == \'foobar\' ) {
//Change the image size from default \'thumbnail\' here
$post_attached_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post_id ), \'medium\' );
if ( $post_attached_image ) {
//as you probably know, the url is the first array value
echo \'<img style="width:100%;" src="\' . $post_attached_image[0] . \'" />\';
}
}
}
add_action( \'manage_cpt_posts_custom_column\', \'attached_image_content\', 10, 2 );