基于this post, 我将下面的代码片段添加到我的Wordpress站点,以便在每篇文章的Posts部分显示ID。但是,它返回;严重错误;。知道这个代码有什么问题吗?
add_filter( \'manage_posts_columns\', \'column_register_wpse_101322\' );
add_filter( \'manage_posts_custom_column\', \'column_display_wpse_101322\', 10, 3 );
function column_register_wpse_101322( $columns ) {
$columns[\'uid\'] = \'ID\';
return $columns;
}
function column_display_wpse_101322( $empty, $column_name, $post_id ) {
if (\'uid\' != $column_name) {return $empty;}
return "$post_id";
}
最合适的回答,由SO网友:Paul G. 整理而成
不幸的是,您不能只是复制扮演完全不同角色的代码并替换users
具有posts
不知何故,你希望它能达到你想要的效果。出现致命错误的原因是,在只提供了2个参数的情况下,向过滤器传递了太多的参数(3)。
如果我理解正确,下面是实现您所需的代码:
add_filter( \'manage_posts_columns\', \'column_register_wpse_101322\' );
add_action( \'manage_posts_custom_column\', \'column_display_wpse_101322\', 10, 2 );
function column_register_wpse_101322( $columns ) {
$columns[ \'uid\' ] = \'ID\';
return $columns;
}
function column_display_wpse_101322( $column_name, $post_id ) {
if ( \'uid\' === $column_name ) {
echo $post_id;
}
}