如何修改WordPress自定义模板Archive页面标题,移除开头的Archive字样
解决方案
之前的代码不生效的原因
你直接调用remove_action('wp_head', '_wp_render_title_tag')时,对应动作还未完成挂载,所以移除操作不会生效。而且完全不需要移除默认的标题渲染逻辑,用WordPress官方提供的归档标题专用过滤器即可实现需求,不会影响其他页面的功能。
实现步骤
把以下代码添加到你自定义主题的functions.php文件末尾即可:
1. 修改页面内显示的归档标题
add_filter( 'get_the_archive_title', 'custom_remove_archive_prefix' ); function custom_remove_archive_prefix( $title ) { // 仅对自定义文章类型归档页生效,不需要可以删除if判断 if ( is_post_type_archive() ) { return post_type_archive_title( '', false ); } // 如果需要对所有归档页(分类、标签、作者归档等)移除Archive前缀,用下面的代码替换上面的逻辑 // return preg_replace( '/^Archive /', '', $title ); return $title; }
2. 同步修改浏览器标签栏的标题
如果需要同时去掉浏览器标签上的「Archive 」前缀,追加以下代码:
add_filter( 'document_title_parts', 'custom_remove_browser_archive_prefix' ); function custom_remove_browser_archive_prefix( $title_parts ) { if ( is_post_type_archive() ) { $title_parts['title'] = post_type_archive_title( '', false ); } return $title_parts; }
生效验证
添加代码后,清空WordPress站点缓存和浏览器缓存,刷新自定义文章类型归档页即可看到效果。
内容的提问来源于stack exchange,提问作者Jérémy
相关产品推荐
相关产品推荐

