纯代码为WordPress添加标签关键词Keywords和元描述Description

新安装的wordpress没有关键词Keywords和元描述Description,需要自行添加,方法一般有两种,第一种是靠第三方插件,第二种就是今天要介绍的纯代码。有代码洁癖的可以考虑这种。本代码主要功能就是主页自主设定关键词和元描述,文章也采集标签做关键词keywords,文章内容的前100字做元描述Description。

找到wordpress模板中的hearder.php,在“<head>”与“</head>”标签中添加如下代码:

<meta charset="<?php bloginfo( 'charset' );?>">
<meta name="viewport" content="width=device-width">
<title><?php wp_title( '|', true, 'right' ); ?></title>
<?php
$description = '';
$keywords = '';
if (is_home() || is_page()) {
    // 将以下引号中的内容改成你自己的主页 description
    $description = "改成你自己主页的元描述";
    // 将以下引号中的内容改成你自己的主页 keywords
    $keywords = "改成你自己网站主页的关键词";
} elseif (is_single()) {
    $description1 = get_post_meta($post->ID, "description", true);
    $description2 = str_replace("\n","",mb_strimwidth(strip_tags($post->post_content), 0, 200, "…", 'utf-8'));
    // 填写自定义字段 description 时显示自定义字段的内容,否则使用文章内容前 200 字作为描述
    $description = $description1? $description1 : $description2;
    // 填写自定义字段 keywords 时显示自定义字段的内容,否则使用文章 tags 作为关键词
    $keywords = get_post_meta($post->ID, "keywords", true);
    if($keywords == '') {
        $tags = wp_get_post_tags($post->ID);
        foreach ($tags as $tag ) {
            $keywords = $keywords. $tag->name. ", ";
        }
        $keywords = rtrim($keywords, ', ');
    }
} elseif (is_category()) {
    // 分类的 description 可以到后台 - 文章 -分类目录,修改分类的描述
    $description = category_description();
    $keywords = single_cat_title('', false);
} elseif (is_tag()){
    // 标签的 description 可以到后台 - 文章 - 标签,修改标签的描述
    $description = tag_description();
    $keywords = single_tag_title('', false);
}
$description = trim(strip_tags($description));
$keywords = trim(strip_tags($keywords));
?>
<meta name="description" content="<?php echo $description;?>">
<meta name="keywords" content="<?php echo $keywords;?>">

修改完之后的完整代码效果如下:

<head>
<meta charset="<?php bloginfo( 'charset' );?>">
<meta name="viewport" content="width=device-width">
<title><?php wp_title( '|', true, 'right' ); ?></title>
<?php
$description = '';
$keywords = '';
if (is_home() || is_page()) {
    // 将以下引号中的内容改成你自己的主页 description
    $description = "自己网站主页的元描述";
    // 将以下引号中的内容改成你自己的主页 keywords
    $keywords = "自己网站主页的关键词";
} elseif (is_single()) {
    $description1 = get_post_meta($post->ID, "description", true);
    $description2 = str_replace("\n","",mb_strimwidth(strip_tags($post->post_content), 0, 200, "…", 'utf-8'));
    // 填写自定义字段 description 时显示自定义字段的内容,否则使用文章内容前 200 字作为描述
    $description = $description1? $description1 : $description2;
    // 填写自定义字段 keywords 时显示自定义字段的内容,否则使用文章 tags 作为关键词
    $keywords = get_post_meta($post->ID, "keywords", true);
    if($keywords == '') {
        $tags = wp_get_post_tags($post->ID);
        foreach ($tags as $tag ) {
            $keywords = $keywords. $tag->name. ", ";
        }
        $keywords = rtrim($keywords, ', ');
    }
} elseif (is_category()) {
    // 分类的 description 可以到后台 - 文章 -分类目录,修改分类的描述
    $description = category_description();
    $keywords = single_cat_title('', false);
} elseif (is_tag()){
    // 标签的 description 可以到后台 - 文章 - 标签,修改标签的描述
    $description = tag_description();
    $keywords = single_tag_title('', false);
}
$description = trim(strip_tags($description));
$keywords = trim(strip_tags($keywords));
?>
<meta name="description" content="<?php echo $description;?>">
<meta name="keywords" content="<?php echo $keywords;?>">
<link rel="profile" href="https://gmpg.org/xfn/11" />
<link rel="pingback" href="<?php echo esc_url( get_bloginfo( 'pingback_url' ) ); ?>">
<?php // Loads HTML5 JavaScript file to add support for HTML5 elements in older IE versions. ?>
<!--[if lt IE 9]>
<script src="<?php echo esc_url( get_template_directory_uri() ); ?>/js/html5.js?ver=3.7.0" type="text/javascript"></script>
<![endif]-->
</head>

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注