确保钩子知道接受两个参数,如codex示例所示。1
add_action( \'manage_stb_custom_column\', \'stb_output_cols\', 10, 2);
请参见
$accepted_args2 WP codex函数参考中的参数。请注意,此参数前面的“10”是默认优先级,但您必须包含它,以便操作知道“2”是接受的参数数。
$accepted\\u args(int)(可选)挂钩函数接受的参数数。在WordPress 1.5.1+中,挂钩函数可以接受在运行匹配的do\\u action()或apply\\u filters()调用时设置的额外参数。例如,操作comment\\u id\\u not\\u found将传递任何钩住请求注释id的函数。默认值:1
我相信你stb_replace_title
返回前需要将新数组数据与$列合并,以便将这些值传递给stb_output_cols
稍后运行。否则,它将完全取代原来的$columns数组,savvy?3
function stb_replace_title($columns)
{
unset($columns[\'title\']) ;
$columns[\'testimonials\'] = _(\'testimonials\');
// Merge, don\'t replace, the $columns array.
return array_merge($columns,
array(\'cb\' => \'<input type="checkbox" />\',
\'testimonials\' => __(\'Testimonial\'),
\'dates\' => __(\'Date\')
)
);
}
要将内容发布到页面,请使用适当的WordPress函数获取术语、元数据或任何您想要的内容,并在您使用的回调函数中回显数据
manage_{$post_type}_posts_columns
. 在您的例子中,回调函数是
stb_output_cols
.
此(修改后的)示例4 codex将获得分类术语“book\\u author”和post meta“publisher”,并为给定的$post\\u id回显各自的值。通过上述步骤,$post\\u id应该已经传递给您的函数。
switch ( $column ) {
// Gets and echoes the value for term \'book_author\' to the $columns[\'book_author\']
case \'book_author\' :
$terms = get_the_term_list( $post_id , \'book_author\' , \'\' , \',\' , \'\' );
if ( is_string( $terms ) )
echo $terms;
else
_e( \'Unable to get author(s)\', \'your_text_domain\' );
break;
// Gets and echoes the the value for post meta key \'publisher\' to $columns[\'publisher\'].
case \'publisher\' :
echo get_post_meta( $post_id , \'publisher\' , true );
break;
}
当然,这假设您已经将数据添加到数据库中。例如,可以使用函数将给定帖子ID的发布者定义为“HarperCollins”
update_post_meta(42, \'publisher\', \'HarperCollins\');
.
现在,当post ID 42的大小写“publisher”为true时,publisher列应该显示“HarperCollins”。
这里有很多可能性。熟悉函数参考5 以及模板标记的索引6 用于检索所需的特定数据。