在 WordPress 后台编辑自定义文章类型的时候,点击更新,或者发布,显示的提示都是“文章已更新”或者“文章已发布”。这里的「文章」怎样改成自定义文章类型的名称呢,下面这个代码可以解决这个问题:
add_filter('post_updated_messages', function($messages){
global $post_type;
if($post_type == 'page' || $post_type == 'post'){
return $messages;
}
if(is_post_type_hierarchical($post_type)){
$messages['page'] = wpjam_replace_post_updated_messages($messages['page'], $post_type);
}else{
$messages['post'] = wpjam_replace_post_updated_messages($messages['post'], $post_type);
}
return $messages;
});
function wpjam_replace_post_updated_messages($messages, $post_type){
$labels = get_post_type_labels(get_post_type_object($post_type));
$label_name = $labels->name;
return array_map(function($message) use ($label_name){
if($message == $label_name) return $message;
return str_replace(
['文章', '页面', 'post', 'Post'],
[$label_name, $label_name, $label_name, ucfirst($label_name)],
$message
);
}, $messages);
}
该功能已经整合到 WPJAM Basic 插件中,并已免费提供下载,简单勾选或者设置下即可开启! 激活即默认修正。