WordPress自定义文章类型后台无法显示Yoast SEO等插件该如何解决?
问题根因与修复方案
第一步:检查Yoast SEO后台配置
- 进入WordPress后台 → Yoast SEO → 设置 → 内容类型
- 找到你注册的自定义文章类型对应选项,确认在编辑界面显示Yoast SEO元框的开关为开启状态,保存设置后清空缓存重试
第二步:修正自定义文章类型注册的钩子优先级
如果你的注册函数挂载的init钩子优先级过高,会导致Yoast初始化时无法识别到你新增的自定义文章类型。修改挂载代码如下:
// 调整注册方法的执行优先级为10或更早,保证Yoast初始化前完成自定义文章类型注册 add_action( 'init', [ $this, 'register_custom_vertical_post_type' ], 10 );
注意:你注册自定义文章类型时使用的
$name变量如果包含大写字母、空格或特殊字符,会导致插件识别异常,WordPress要求自定义文章类型的slug必须为全小写,最多20个字符,仅可使用字母、数字和下划线。
第三步:检查编辑器面板可见性
打开自定义文章类型的编辑页,点击右上角的三点(⋮)→ 偏好设置 → 面板,确认Yoast SEO对应的选项已勾选,没有被系统隐藏。
第四步:强制Yoast支持自定义文章类型
如果以上步骤都无效,可添加代码直接向Yoast注入你的自定义文章类型:
add_filter( 'wpseo_accessible_post_types', 'add_custom_cpt_to_yoast' ); function add_custom_cpt_to_yoast( $post_types ) { // 将数组内的值替换为你注册的所有自定义文章类型的slug $custom_cpt_list = ['cpt_slug1', 'cpt_slug2', 'cpt_slug3']; foreach ($custom_cpt_list as $cpt) { $post_types[$cpt] = $cpt; } return $post_types; }
内容的提问来源于stack exchange,提问作者Pierre Liegard
相关产品推荐
相关产品推荐

