wordpress全自动调用当前页面的关键词和描述,添加到wp_head函数当中,并且让这两个meta标签显示在title标签后面。【亲测有效】

说明

文章页描述:
使用 wp_strip_all_tags 函数去除文章内容中的所有 HTML 标签,确保描述只包含纯文本。
使用 mb_substr 截取前 200 个字符。
分类页描述:
使用 wp_strip_all_tags 函数去除分类目录描述中的所有 HTML 标签,确保描述只包含纯文本。
其他部分:
保持首页、搜索页和其他页面的关键词和描述设置不变。

 

位置:

通过设置 add_action(‘wp_head’, ‘add_meta_tags’, 1); 确保 <meta> 标签在 </title> 标签后面输出。
将此代码添加到你的主题的 functions.php 文件中即可实现优化后的功能。确保在修改文件之前备份,以防出现问题。

 

 

代码:

将以下代码添加到当前使用的主题的functions.php文件的未尾空白处,保存并刷新页面即可。

function add_meta_tags() {
if (is_single()) {
global $post;
// 获取文章的标签作为关键词
$tags = wp_get_post_tags($post->ID);
$keywords = [];
foreach ($tags as $tag) {
$keywords[] = $tag->name;
}
$keywords = implode(', ', $keywords);
// 获取文章的前200个字符作为描述,并确保只包含纯文本
$description = mb_substr(wp_strip_all_tags($post->post_content), 0, 200);
$description = trim(preg_replace('/<.*?>/s', '', $description)); // 删除 HTML 标签
$description = str_replace(array("\r\n", "\n", "\r"), '', $description); // 删除换行符
} elseif (is_home() || is_front_page()) {
// 固定的首页关键词和描述
$keywords = "首页固定关键词1, 首页固定关键词2";
$description = "这是固定的首页描述。";
} elseif (is_category()) {
// 分类页的关键词和描述
$category = get_queried_object();
$keywords = $category->name; // 使用分类名称作为关键词
// 使用分类目录中的描述,并确保只包含纯文本
$description = wp_strip_all_tags(category_description($category->term_id));
} elseif (is_search()) {
// 固定的搜索页关键词和描述
$keywords = "搜索固定关键词1, 搜索固定关键词2";
$description = "这是固定的搜索结果页描述。";
} else {
// 其他页面的默认关键词和描述
$keywords = "其他页面关键词";
$description = "这是其他页面的默认描述。";
}
// 输出meta标签
echo '<meta name="keywords" content="' . esc_attr($keywords) . '">' . "\n";
echo '<meta name="description" content="' . esc_attr($description) . '">' . "\n";
}
// 将函数挂载到wp_head钩子上,并确保在<title>标签后面
add_action('wp_head', 'add_meta_tags', 1);

是不是很简单?

 

wordpress全自动调用当前页面的关键词和描述,添加到wp_head函数当中,并且让这两个meta标签显示在title标签后面。【亲测有效】其它页面的关键词和描述,自己手动添加到代码里面即可。

 

 

 

未经允许不得转载:泥人传说 » wordpress全自动调用当前页面的关键词和描述,添加到wp_head函数当中,并且让这两个meta标签显示在title标签后面。【亲测有效】
分享到:
赞(0)

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址