WordPress中是否存在设置标题的相关函数?
WordPress中用于设置标题的函数详解
当然有啦!WordPress提供了一套专门用于处理页面/文章标题的核心函数和过滤器,这里给你梳理几个最常用的:
1. 经典函数:wp_title()
这是早期WordPress里用来生成页面标题的核心函数,虽然现在官方更推荐用过滤器来处理,但很多旧主题里依然能看到它的身影。它可以根据当前页面类型(首页、文章页、分类页等)自动生成对应的标题,还支持自定义分隔符和前后缀。
举个基础用法示例:
<title><?php wp_title('|', true, 'right'); ?> <?php bloginfo('name'); ?></title>
参数说明:
- 第一个参数:标题各部分之间的分隔符
- 第二个参数:控制是否直接输出标题(
true直接输出,false返回字符串) - 第三个参数:控制分隔符的位置(
left或right)
2. 现代推荐:使用过滤器修改文档标题
从WordPress 4.4版本开始,官方引入了document_title_parts和pre_get_document_title这两个过滤器,用来更灵活地控制页面标题,这也是现在的最佳实践。
document_title_parts过滤器
这个过滤器允许你修改标题的各个组成部分(比如标题文本、站点名称、分隔符),非常适合精细化定制:
add_filter('document_title_parts', function($title_parts) { // 如果是分类页,修改标题前缀 if (is_category()) { $title_parts['prefix'] = '分类归档:'; } // 自定义站点名称的位置或内容 $title_parts['site'] = get_bloginfo('name') . ' - 优质内容平台'; return $title_parts; });
pre_get_document_title过滤器
如果你想直接替换整个标题文本,这个过滤器更直接:
add_filter('pre_get_document_title', function($title) { // 针对404页面自定义标题 if (is_404()) { $title = '哎呀,页面走丢了 - ' . get_bloginfo('name'); } return $title; });
额外提示:自定义文章/页面标题字段
如果你是要给特定文章或页面设置自定义的标题内容(而非浏览器标签栏的标题),可以用update_post_meta()函数来存储自定义标题,之后用get_post_meta()调用:
// 给ID为123的文章设置自定义标题 update_post_meta(123, 'custom_post_title', '我的专属文章标题');
内容的提问来源于stack exchange,提问作者Devi
相关产品推荐
相关产品推荐

