几个小时前我刚刚做过类似的事情,所以我的代码可能不是最好的,但是您需要使用2个钩子来实现。正如您从我在代码中看到的那样似乎正在使用自定义帖子类型时,这两个钩子将是。
manage_post_type_posts_columns()
manage_post_type_posts_custom_column()
我已经使用manage_post_type_posts_columns()
过滤器挂钩创建了一个新的“标题”列,并取消设置了旧的“标题”列,然后使用了manage_post_type_posts_custom_column()
动作挂钩以使用我自己的方法为该列生成新的内容/标题。
希望对您有所帮助,并在其中添加了您的代码...
// Replace your Title Column with the Existing one //
function replace_title_column($columns) {
$new = array();
foreach($columns as $key => $title) {
if ($key=='title')
$new['new-title'] = 'New Title'; // Our New Colomn Name
$new[$key] = $title;
}
unset($new['title']);
return $new;
}
// Replace the title with your custom title
function replace_title_products($column_name, $post_ID) {
if ($column_name == 'new-title') {
$oldtitle = get_the_title();
$newtitle = str_replace(array("<span class='sub-title'>", "</span>"), array("", ""),$oldtitle);
$title = esc_attr($newtitle);
echo $title;
}
}
add_filter('manage_mycpt_columns', 'replace_title_column');
add_action('manage_mycpt_custom_column', 'replace_title_products', 10, 2);