如何在自定义帖子类型仪表板帖子页面中显示特色图片

时间:2014-02-21 作者:S.k.joy

我已将此代码添加到我的主题中,以添加一个新的列,用于在仪表板帖子页面列中显示特色图像。它在wordpress的默认帖子页面中工作,但在自定义帖子类型中不工作(我的自定义帖子名称是photo\\u gallery)。

add_filter(\'manage_posts_columns\', \'posts_columns\', 5);
add_action(\'manage_posts_custom_column\', \'posts_custom_columns\', 5, 3);
function posts_columns($defaults){
    $defaults[\'riv_post_thumbs\'] = __(\'Thumbnail\');
    return $defaults;
}
function posts_custom_columns($column_name, $id){
   if($column_name === \'riv_post_thumbs\'){
        echo the_post_thumbnail( array(\'292, 292\') );
    }
}
如何将此自定义列显示为自定义帖子类型概述中的第一列?

1 个回复
SO网友:David

我不确定什么不适合你的自定义帖子类型。有两种可能的情况:

自定义帖子类型photo_gallery 是分层的。这意味着两者都不显示(列标题和值)无论如何,如果您只想将缩略图添加到自定义帖子类型中,则此代码应执行以下操作:

add_filter( \'manage_photo_gallery_posts_columns\', \'wpse_135433_posts_columns\' );
add_action( \'manage_photo_gallery_posts_custom_column\', \'wpse_135433_posts_custom_columns\', 10, 2 );

function wpse_135433_posts_columns( $defaults ){

    $defaults = array_merge(
        array( \'riv_post_thumbs\' => __( \'Thumbnail\' ) ),
        $defaults
    );

    return $defaults;
}

function wpse_135433_posts_custom_columns( $column_name, $id ) {

   if ( $column_name === \'riv_post_thumbs\' ) {
        echo the_post_thumbnail( array(\'292, 292\') );
    }
}
顺便说一下,您应该在自定义函数上使用前缀以避免冲突。(在本例中,我使用了前缀wpse_135433_.

功能wpse_135433_posts_columns() 将第一个位置的列附加到列列表$defaults.

如果要在自定义帖子类型之外的其他帖子上使用此功能,则应使用

add_filter( \'manage_posts_columns\', \'wpse_135433_posts_columns\', 10, 2 );
add_action( \'manage_posts_custom_column\', \'wpse_135433_posts_custom_columns\', 10, 2 );
对于非层级职位类型和

add_filter( \'manage_pages_columns\', \'wpse_135433_posts_columns\', 10, 2 );
add_action( \'manage_pages_custom_column\', \'wpse_135433_posts_custom_columns\', 10, 2 );
对于分层职位类型。传递给的第二个参数manage_posts_columns 筛选器是当前的帖子类型。

结束

相关推荐

POSTS_NAV_LINK();不显示在静态页面上

我有两个不同的循环。主页上的默认值,但存档页面上的二次循环。它抓住了所有的内容,就像这样:<?php // WP_Query arguments $args = array ( \'posts_per_page\' => \'3\' ); // The Query $archiveQuery = new WP_Query( $args ); // The Loop if ( $archiveQuery-&