WordPress和Prettify免插件实现代码高亮

发表时间:2015-12-03 15:16 | 分类:建站经验 | 浏览:2,284 次

使用插件可以实现wordpress代码高亮,之前我一直用的是SyntaxHighlighter插件。最后选择放弃的原因其实就是太复杂。想要实现代码高亮,必须添加[code language=”xxx”]…[/code]标记。而且我在卸载该插件后发现,文章中直接显示有code字样。这个给人的感觉也不好。如何免插件而且简单的实现代码高亮?最后我选择了Google的Prettify,效果如下图所示。

20151203150342

Google Code Prettify 是 Google 开源的一个用于代码高亮的 Javascript 库,支持 C/C++, Java, Python, Ruby, PHP,Javascript 等常见语言。使用Prettify一般只需包含两个文件:prettify.js 和 prettify.css。压缩过后的 prettify.js 大小差不多在 15K 左右,非常小巧。还有一个吸引人的就是简单,使用它进行代码高亮时,不需要指明语言类型,Prettify会自动判断并处理。

WordPress免插件实现代码高亮步骤

一、下载js和css文件

本站js地址:https://zhangnq.com/wp-content/themes/P1/js/prettify/prettify.min.js

本站css地址:https://zhangnq.com/wp-content/themes/P1/css/prettify-default.css

css文件只包含代码高亮样式主题,我选择默认default。当然你可以在这里挑选适合自己的样式。

二、修改functions.php文件

打开wordpress主题文件中的functions.php文件,在末尾?>前添加如下代码。第一步下载js文件我保存在当前主题下的js目录。

function dangopress_esc_html($content) {
    $regex = '/(<pre\s+[^>]*?class\s*?=\s*?[",\'].*?prettyprint.*?[",\'].*?>)(.*?)(<\/pre>)/sim';
    return preg_replace_callback($regex, dangopress_esc_callback, $content);
}
function dangopress_esc_callback($matches) {
    $tag_open = $matches[1];
    $content = $matches[2];
    $tag_close = $matches[3];

    //$content = htmlspecialchars($content, ENT_NOQUOTES, get_bloginfo('charset'));
    $content = esc_html($content);

    return $tag_open . $content . $tag_close;
}
function setup_load_script() {
    // Register prettify.js
    wp_enqueue_script('prettify-js', get_template_directory_uri().'/js/prettify/prettify.min.js',
                       array(), '20130504', true);
}
function wp_prettify_load() {
    if ( is_single() ) {
        add_filter('the_content', 'dangopress_esc_html', 2);
        add_filter('comment_text', 'dangopress_esc_html', 2);
        add_action('wp_enqueue_scripts', 'setup_load_script');
    }
}
add_action( 'wp', 'wp_prettify_load' );

最后wp_prettify_load表示只在文章加载。

三、修改header.php文件

打开wordpress主题文件中的header.php文件,在</head>标签前添加如下代码,用来加载主题样式,也只在文章页加载。

<?php if ( is_single() ) { ?><link rel="stylesheet" type="text/css" media="all" href="<?php echo get_template_directory_uri().'/css/prettify-default.css' ;?>" />

到这里wordpress+prettify免插件纯代码实现文章代码高亮设置就结束了。我们在编写文章时把代码放在pre标签内即可。

参考连接:

http://kodango.com/highlight-code-with-google-code-prettify

https://code.google.com/archive/p/google-code-prettify/

本文标签:

本文链接:https://zhangnq.com/2295.html

欢迎您在本博客中留下评论,如需转载原创文章请注明出处,谢谢!

wordpress一键全站迁移和备份

 

整站迁移

有时候,我们把整个网站迁移到另一个服务器,性能更高,更安全的服务器.

对于不懂技术的人来说,不仅操作繁琐,还容易把博客的数据不小心损坏掉.

推荐一个插件All-in-One WP Migration,能够一键备份和迁移,免费版已足够使用.

操作指南

安装插件

wordpress插件搜索关键词All-in-One ,找到All-in-One WP Migration插件,点击安装

备份整站

把整个网站配置连同数据库的内容备份

生成备份

生成备份文件结果如图,点击下载

下载备份

可以看到备份文件为wpress的后缀文件

恢复整站

在新的wordpress网站也安装All-in-One WP Migration插件,点击导入,将备份的文件拖拽进去即可

BaiduSubmit:度娘WordPress结构化数据插件(改进版)

张戈博客曾多次提到一个会造成百度不收录问题的原因:如果网站存在实时推送机制(比如安装了百度官方推出的 BaiduSubmit 插件),那么发布文章后,在百度收录之前这段时间内,无论如何都不要再去更新文章内容了,因为每次提交更新都会触发 BaiduSubmit 的实时推送机制,通知百度内容更新了!

在百度收录之前,如果频繁向百度推送更新通知,文章很可能就会被百度丢入沙盒,短时间内不会在百度搜索展现该条收录!

个人大胆猜测,造成这种现象的根本原因是收录之前,如果频繁更新内容,百度会认为这个内容是不稳定的。这个机制估计是百度出于用户体验考虑,百度希望用户看到的内容是和搜索到的一样,而不是百度收录了 A 内容,就因为你中途改成了 B 内容,导致用户通过 A 关键字搜索,却没有得到预期的结果!

因此,网站在发布文章之后,稳定收录并展示之前,切忌频繁修改内容!

但是,我作为一名中度强迫症患者,只要看到文章有错别字,或者排版等瑕疵,我都会立即修改!相信和我一样的朋友,肯定不在少数!

下面就分享一下解决办法。

一、关闭实时推送

①、关闭 Baidusubmit 实时推送

如果不想每次更新文章都触发推送机制,那么最简单的方法就是在插件后台关闭实时推送即可:

这个方法是最简单的,但是存在一定缺憾:关闭实时推送之后,新发布文章也不会再推送给百度了。只会在百度提交一份 sitemap 数据,让百度定时抓取。

在博客没有开通 sitemap 权限的情况下,那这个插件就相当于在百度提交了 sitemap 数据(上图只有在开通了 sitemap 权限的情况下才可以看到)。

当然,如果你不怕麻烦,也可以在发布新文章的时候启用实时推送,然后在手动关闭即可。

②、关闭 WordPress 实时推送

除了这个插件会实时推送数据,WordPress 其实还自带了一个更新通知功能:

直接将百度的 PING 服务删除即可,其他的删不删应该都没关系。

二、修改插件机制

相比于第一种方法,下面的方法就更加合理:只有在文章发布的时候推送数据到百度,而后续更新文章则不会触发插件的推送机制,强烈推荐使用!

方法①、当网站未禁用修订功能时,可通过修订判断来终止插件推送:

WordPress 的修订功能默认是打开的,那么我们就可以用下面这个语句来判断是否是更新动作。

 if (wp_is_post_revision($postid)) return;   //更新文章不往下执行,直接返回

修改方法:

编辑 baidusubmit 插件下的 main.php,找到 static function publishPost($postid) { ,在之后添加以上代码即可:

 static function publishPost($postid)
    {
        if (wp_is_post_revision($postid)) return; //更新文章时不推送
        require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . './inc/sitemap.php';
        add_post_meta($postid, 'Baidusubmit', 1, true);
        $schema = BaidusubmitSitemap::genSchemaByPostId($postid, $xpost);
        if ('publish' != $xpost->post_status || '' != $xpost->post_password) {
            self::deletePost($postid);
            return;
        }
/* 以下代码略 */

Ps:可能你会疑问,如何判断已修改成功,更新时插件是否依然在推送数据?有个很简单的判断办法:更新文章时,如果有推送数据,那么花费的时间将比不推送数据要长的多!差距非常明显!

当然,如果你无法确定是否生效,建议使用下面这种方法,绝对可靠!

方法②、当网站禁用了修订功能时,可通过自定义栏目来终止插件推送:

我在测试上面的代码时,发现根本不生效!看了半天,才发现我的博客曾经把修订功能给禁用了!查看修订功能是否被禁用,只要打开网站根目录下的 wp-config.php,查看是否存在一下代码:

/** 禁用自动修订版本 **/
define('WP_POST_REVISIONS', false);
define('AUTOSAVE_INTERVAL', 36000);

禁用修订功能是为了节省数据库主键,最大程度保证文章 ID 的连续性,估计这样设置过的博客也不在少数。

既然禁用了修订功能,那第①个方法就无法使用了!这时候,我们可以借助 WordPress 的自定义栏目功能来解决这个问题。

原理很简单:文章首次发布时,会向百度推送数据,并且在对应文章中新增一个自定义栏目:Baidusubmit=1

更新文章的时候,插件先判断自定义栏目,如果 Baidusubmit=1,则不再推送,从而解决了重复推送问题。

修改方法:

还是编辑 baidusubmit 插件下的 main.php,找到 static function publishPost($postid) {,在之后添加代码:

//如果检测到Baidusubmit=1,则返回
if(get_post_meta($postid,'Baidusubmit',true) == 1) return;
//若推送到百度,则新增自定义栏目
add_post_meta($postid, 'Baidusubmit', 1, true);

最终如图所示:

发布文章之后,文章编辑界面的自定义栏目中将出现如下键值:

后续,如果想让插件再次向百度推送文章,只需要将这个值改为 0 或其他数值即可。

三、插件下载地址

考虑到代码盲站长,特将以上 2 种修改后的 baidusubmit 插件打包上传,请根据实际需求下载安装即可:

博客未禁用修订功能,请下载【插件①】,不清楚的推荐下载【插件②】

下载地址

安装时,先删除原有的 baidusubmit 插件,然后上传安装即可。

WordPress无法在线安装插件和主题,无法更新wordpress版本

具体情况:在主题和插件的页面,没有显示安装插件的按钮,也无法进行更新,在仪表盘也没有更新页面。 一开始以为是文件权限问题,结果发现并不是这个原因。

解决方法:检查 wp-config.php 文件是否有以下2行,删除或改为 false。

define( 'DISALLOW_FILE_EDIT' , true );
define( 'DISALLOW_FILE_MODS' , true );
另:WordPress无法在线安装主题和插件的解决办法

最近有几位朋友询问倡萌,WordPress无法在线安装主题和插件,无法查看热门插件和主题,提示“发生了未知错误。有可能是因为 WordPress.org 工作不正常,或本地配置有误。如果问题持续存在,请浏览中文支持论坛。”

询问了一下,一般是由于使用的国内主机封了某些DNS导致的。

如果你的是VPS或服务器,比如阿里云服务器,可以使用下面的命令打开resolv.conf:

1 vi /etc/resolv.conf

修改为google的DNS或其他

1 2 nameserver 8.8.8.8 nameserver 8.8.4.4

保存即可;

如果是虚拟主机,请自己联系你的主机商,要他们提供解决方案。

wordpress技巧篇之怎么使每篇文章针对百度蜘蛛做出检测而快速得到文章的收录情况

作者 / 时间 2019-02-03 10:11:46

站长朋友们都知道网站优化对于新站而言是多重要,不仅是新站就是老站同等重要,只有网站优化好了才会有流量,有流量才可能转化为销量进而给站长带来盈利。很多站长在起初建站就会把网站优化都设计好这样方便后期的整体优化,今天有位站长朋友使用的是php空间安装的wordpress博客程序,由于网站搭建好了之后每天发布的文章比较多,只能在站长工具中看到文章每天都有收录,可是具体收录哪些文章看的不是很具体,于是这位站长朋友想如果能让收录的文章在首页显示出来就更好了,意思就是在每篇文章标题后面显示百度已收录和百度未收录。如下图1:那么该如何实现呢?无忧主机小编经过研究之后找到了实现的方法,具体来整理下吧。 1、首先登陆博客网站后台,找到左侧外观–主题–编辑–找到右侧functions.php模板函数,如下图2:2、点击模板函数打开,在最下面?>前面加入以下代码:

function 51php_bdsl($url){

$url='http://www.baidu.com/s?wd='.$url;

$curl=curl_init();

curl_setopt($curl,CURLOPT_URL,$url);

curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);

$rs=curl_exec($curl);

curl_close($curl);

if(!strpos($rs,'抱歉,没有找到')){

return 1;

}else{

return 0;

}

}

如下图3:3、做了上面的步骤还是需要到您的模板中去调用才可以实现这样的功能,具体的实现代码如下: <?php

if(php_bdsl(get_permalink()) == 1)

echo "百度已收录";

else

echo "百度未收录";

?>

上面的代码根据您的喜好加入在不同的地方,无忧主机小编喜欢加上index.php中的<?php get_template_part(‘content’); ?>下面,即可显示出来。 反正就是完成以上几个步骤就可以完成您的这个功能。 以上是无忧主机独立IP虚拟主机为您带来的介绍。本文地址:https://www.51php.com/wordpress/28267.html

WordPress PC桌面客户端

这款工具并不是Win10 UWP通用版本,而是一个Win32应用,在功能上更像是一个简单的网页包装,不过还是提供了一些实用功能。

WordPress PC桌面客户端提供以下功能:

• 在“我的网站”面板中可以管理多个站点,包括WordPress.com站点以及自托管站点;

• 提供新的WordPress.com编辑器,包含应用内预览以及草稿自动保存功能;

• 阅读器提供关注和阅读你喜欢站点的功能,全新的“发现”功能为你推荐来自所有WordPress站点的优质内容;

• 分析和统计功能可以让你了解站点和文章的访问量等信息;

• 应用内通知集中展示博客评论、喜欢、关注状态。

感兴趣的用户可以点此下载WordPress桌面客户端。(via: Microsoft-News)

WordPress 提示”在裁剪您的图像时发生了错误”解决方案

在 WordPress 中使用裁剪图片功能时,出现:“在裁剪您的图像时发生了错误” 或者 “There has been an error cropping your image.”

原因:

缺少 PHP GD 库

Ubuntu下运行:

sudo apt-get install php5-gd

or

sudo apt-get install php7.0-gd

CentOS下运行:

yum install php-gd

安装完以后重启 Apache 或 Nginx 即可

本文转载自:https://blog.csdn.net/yilovexing/article/details/78854422

WordPress截取字符串函数wp

发布时间:2019-03-17  编辑:杨雨个人博客网站   点击:

WordPress有个截取字符串的函数wp_trim_words(),在标题、摘要等地方都可以用到,与DedeCMS的cn_substr()同样功能。使用方法也非常简单:

用法:

<?php wp_trim_words( $text, $num_words = 55, $more = null ); ?>

参数

$text
(string) (required) 要修剪的文本。
Default: None

$num_words
(integer) (optional) 保留的单词个数。
Default: 55

$more
(string) (optional) 修剪之后的文本后面跟的字符
Default: ‘…’ 就是 …

返回值

(string)
修剪之后的文本

实例:

<?php

echo wp_trim_words( get_the_title(),50);// 截取50字的文章标题

echo wp_trim_words( get_the_excerpt(),100);// 截取100字的文章摘要

echo wp_trim_words( get_the_content(),500);// 截取500字的文章内容

本文地址:http://itbyc.com/cms/wordpress/19168.html
转载请注明出处。

导入WordPress Avada主题Demo的方法

安装演示提供的网页,文章,图片,主题选项,窗口小部件,滑块等。重点:包括插件需要你安装演示之前,必须安装并激活。请检查“系统状态”标签,以确保您的服务器满足成功导入的所有要求。需要注意的设置将以红色列出。这里查看更多信息。

安装必需和建议的插件要导入演示;Fusion Core, Revolution Slider, Layer Slider, WooCommerce, and Contact Form 7 Avada 经典演示需要的所有插件。代理,应用程序,咖啡厅,时尚和旅游的演示只需要融合的核心和联系表7插件。

安装并激活All-in-One WP Migration迁移插件。

下载您所需的演示备份文件到您的计算机。

在左侧导航栏中找到 All-in-One WP Migration -> Import page.

点击导入从按钮,然后选择文件。选择你刚刚下载的演示备份文件。

一旦导入完成后,您会收到一条导入过程将覆盖整个站点数据库的警告。点击Continue按钮继续。

一旦你成功导入数据,您将收到一条成功的消息。然后,您将自动注销,你会被要求更新WordPress的数据库。点击更新WordPress的数据库按钮。

一旦更新完成后,单击继续。您需要使用下面的用户名(admin)/密码(admin)信息重新登录到WordPress管理区

一旦重新登录,您可以更改您的用户名/密码,回到你的唯一凭证。 全做完了!

WordPress SEO无插件设置网站标题关键词描述教程

测试了很多WordPress SEO设置网站标题关键词描述相关插件都不满意,强大的功能也太强大了,我其实就要设置关键词与描述,要不了那么强大的功能,二很多新手下载了这些WordPress SEO插件估计更是头晕,于是自己参考资料弄了个不需要插件就能实现WordPress SEO设置网站标题关键词描述的办法.

本文可搭配我写的另外一篇文章使用: WordPress SEO无插件添加设置文章关键词与文章描述功能

步骤一: 用代码编辑器打开你的WordPress主题的header.php文件

header.php文件是WordPress主题的头部模板,我希望网站首页的关键词设置为下面这样,如何操作?

<title>WordPress易用教程-企业网站建设与制作-企业主题网站模板</title>
<meta name=“keywords” content=“WordPress教程,WordPress企业主题,WordPress主题,WordPress模板,企业网站建设,企业网站模板,企业网站制作,网站模板” />
<meta name=“description” content=“WordPress易用教程提供大量精品WordPress企业主题模板与企业网站模板下载,提供企业网站建设与制作教程” />

如果你懒得看下去就直接复制下面的代码粘贴到你的WordPress主题的header.php文件里面:

<title><?php if ( is_home() ) {
echo“WordPress易用教程-企业网站建设与制作-企业主题网站模板”;
} elseif ( is_category() ) {
single_cat_title(); echo“-“; bloginfo(‘name’);
} elseif (is_single() || is_page() ) {
single_post_title();echo“-“; bloginfo(‘name’);
} elseif (is_tag() ) {
single_tag_title();echo“-“; bloginfo(‘name’);
} elseif (is_search() ) {
echo “搜索结果”; echo“-“; bloginfo(‘name’);
} elseif (is_404() ) {
echo ‘页面未找到!’;
} else {
wp_title(,true);
} ?></title>
<?php
$keywords = ;
$description = ;
if (is_home() || is_page()) {
// 将以下引号中的内容改成你的主页keywords
$keywords = “WordPress教程,WordPress企业主题,WordPress主题,WordPress模板,企业网站建设,企业网站模板,企业网站制作,网站模板”;
// 将以下引号中的内容改成你的主页description
$description = “WordPress易用教程提供大量精品WordPress企业主题模板与企业网站模板下载,提供企业网站建设与制作教程”;
}
elseif (is_single()) {
// 填写自定义字段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,’,’);
}
$description1 = get_the_excerpt($post->ID, “excerpt”, true);
$description2 = str_replace(“\n”,“”,mb_strimwidth(strip_tags($post->post_content), 0, 200, “…”, ‘utf-8’));
//$description2 =mb_strimwidth(strip_tags(apply_filters(‘the_content’, $post->post_content)), 0, 160,”…”);
// 填写自定义字段description时显示自定义字段的内容,否则使用文章内容前200字作为描述
$description = $description1 ? $description1 : $description2;
}
elseif (is_category(‘4’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress安全,WordPress网站安全,WordPress安全设置,WordPress安全插件”;
$description = category_description();
}
elseif (is_category(‘8’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress SEO,WordPress优化,WordPress SEO插件”;
$description = category_description();
}
elseif (is_category(’20’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress主题开发,WordPress主题制作,开发WordPress主题”;
$description = category_description();
}
elseif (is_category()) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = single_cat_title(,false);
$description = category_description();
}
elseif (is_tag()){
// 标签的description可以到后台 – 文章 – 标签,修改标签的描述
$keywords = single_tag_title(,false);
$description = tag_description();
}
$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));
?>
<meta name=“keywords” content=“<?php echo $keywords; ?>” />
<meta name=“description” content=“<?php echo $description; ?>” />

我建议还是看一下下面的WordPress SEO无插件设置网站标题关键词描述教程,不然文章详细页面的关键词你可能不会添加.

步骤二: 修改header.php文件的title标签

把header.php里面的title标签改为如下内容: echo”WordPress易用教程-企业网站建设与制作-企业主题网站模板” ,冒号里面的内容(红色部分)需要你自己改为自己想要的网站标题.(这里不通过后台调用,我弄了半天不理想,干脆写死了.)

<title><?php if ( is_home() ) {
echo“WordPress易用教程-企业网站建设与制作-企业主题网站模板”;
} elseif ( is_category() ) {
single_cat_title(); echo“-“; bloginfo(‘name’);
} elseif (is_single() || is_page() ) {
single_post_title();echo“-“; bloginfo(‘name’);
} elseif (is_tag() ) {
single_tag_title();echo“-“; bloginfo(‘name’);
} elseif (is_search() ) {
echo “搜索结果”; echo“-“; bloginfo(‘name’);
} elseif (is_404() ) {
echo ‘页面未找到!’;
} else {
wp_title(,true);
} ?></title>

这段代码的意思就是:

1.如果当前页面是首页那么直接输出设置好的网站标题.

2.如果当前页面是分类页面 那么网站标题内容为:<title>分类名称-站点标题</title>,(这个站点标题 需要你自己去WordPress后台的左侧的设置->常规里面设置),就是下图这里:

WordPress SEO无插件设置网站标题关键词描述教程

3. 如果是文章详细页面与单页,那么网站标题内容为:<title>文章名称-站点标题</title>

4. 如果是关键词tag页面,那么网站标题内容为:<title>tag名称-站点标题</title>

5.如果是搜索页面,那么网站标题内容为:<title>输入的搜索关键词-站点标题</title>

6.如果当前页面是404,那么网站标题内容为:<title>页面未找到</title>

步骤三: 修改WordPress主题header.php文件的keywords关键词与description描述

keywords关键词与description描述这两个一起设置了,代码内容如下:

<?php
$keywords = ;
$description = ;
if (is_home() || is_page()) {
// 将以下引号中的内容改成你的主页keywords
$keywords = “WordPress教程,WordPress企业主题,WordPress主题,WordPress模板,企业网站建设,企业网站模板,企业网站制作,网站模板”;
// 将以下引号中的内容改成你的主页description
$description = “WordPress易用教程提供大量精品WordPress企业主题模板与企业网站模板下载,提供企业网站建设与制作教程”;
}
elseif (is_single()) {
// 填写自定义字段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,’,’);
}
$description1 = get_the_excerpt($post->ID, “excerpt”, true);
$description2 = str_replace(“\n”,“”,mb_strimwidth(strip_tags($post->post_content), 0, 200, “…”, ‘utf-8’));
//$description2 =mb_strimwidth(strip_tags(apply_filters(‘the_content’, $post->post_content)), 0, 160,”…”);
// 填写自定义字段description时显示自定义字段的内容,否则使用文章内容前200字作为描述
$description = $description1 ? $description1 : $description2;
}
elseif (is_category(‘4’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress安全,WordPress网站安全,WordPress安全设置,WordPress安全插件”;
$description = category_description();
}
elseif (is_category(‘8’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress SEO,WordPress优化,WordPress SEO插件”;
$description = category_description();
}
elseif (is_category(’20’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress主题开发,WordPress主题制作,开发WordPress主题”;
$description = category_description();
}
elseif (is_category()) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = single_cat_title(,false);
$description = category_description();
}
elseif (is_tag()){
// 标签的description可以到后台 – 文章 – 标签,修改标签的描述
$keywords = single_tag_title(,false);
$description = tag_description();
}
$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));
?>
<meta name=“keywords” content=“<?php echo $keywords; ?>” />
<meta name=“description” content=“<?php echo $description; ?>” />

我一段一段的解说下:

1.首页的keywords关键词与description描述设置

if (is_home() || is_page()) {
// 将以下引号中的内容改成你的主页keywords
$keywords = “WordPress教程,WordPress企业主题,WordPress主题,WordPress模板,企业网站建设,企业网站模板,企业网站制作,网站模板”;
// 将以下引号中的内容改成你的主页description
$description = “WordPress易用教程提供大量精品WordPress企业主题模板与企业网站模板下载,提供企业网站建设与制作教程”;
}

这个是指如果访问的页面是首页与单页面,那么直接输出网站关键词与描述. “”里面的内容改为你自己的.

2.文章详细页面的关键词如何调用(这段不看的话详细页面无法调用关键词)

elseif (is_single()) {
// 填写自定义字段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,’,’);
}
$description1 = get_the_excerpt($post->ID, “excerpt”, true);
$description2 = str_replace(“\n”,“”,mb_strimwidth(strip_tags($post->post_content), 0, 200, “…”, ‘utf-8’));
//$description2 =mb_strimwidth(strip_tags(apply_filters(‘the_content’, $post->post_content)), 0, 160,”…”);
// 填写自定义字段description时显示自定义字段的内容,否则使用文章内容前200字作为描述
$description = $description1 ? $description1 : $description2;
}

需要你在每篇文章添加keywords自定义字段,而自定义字段功能默认是没有打开的,下面我示范下如何打开:

需要你在每篇文章添加keywords自定义字段,而自定义字段功能默认是没有打开的,下面我示范下如何打开

WordPress后台设置一次就以后不用设置了,如上图,在你添加WordPress文章的右上角找到这个显示选项,然后勾选自定义字段.就好了.

以后WordPress文章自定义字段就会一直显示了.

然后每次在添加WordPress文章的时候底部有自定义字段,你顺手加上去就好了,记得点添加自定义字段.

WordPress文章的时候底部有自定义字段,你顺手加上去就好了,记得点添加自定义字段.

3.分类页面的关键词调用:

elseif (is_category()) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = single_cat_title(,false);
$description = category_description();
}

分类页面的关键词默认是直接调用分类名称.

分类页面的描述调用的是 图形描述

分类页面的描述调用的是 图形描述

WordPress修改与添加图形描述都很方便:

WordPress修改与添加图形描述都很方便

如果我要每个分类都设置关键词如何处理?

这可以利用WordPress的is_category()函数来判断,比如下面这段代码的意思就是,如果是分类4,那么调用的关键词是什么,调用的描述还是上面的图像描述.

elseif (is_category(‘4’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress安全,WordPress网站安全,WordPress安全设置,WordPress安全插件”;
$description = category_description();
}
elseif (is_category(‘8’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress SEO,WordPress优化,WordPress SEO插件”;
$description = category_description();
}
elseif (is_category(’20’)) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = “WordPress主题开发,WordPress主题制作,开发WordPress主题”;
$description = category_description();
}
elseif (is_category()) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = single_cat_title(,false);
$description = category_description();
}

那么这个分类的数字代号如何获取? 如何查看分类ID: 如何查看获取WordPress分类目录与标签和文章的ID

方法一: 在WordPress分类目录设置页面鼠标悬停在你想要的获取分类ID的名称上,注意左下角,会出现分类ID名称.

在WordPress分类目录设置页面鼠标悬停在你想要的获取分类ID的名称上,注意左下角,会出现分类ID名称.

在WordPress分类目录设置页面鼠标悬停在你想要的获取分类ID的名称上,注意左下角,会出现分类ID名称.

方法二: 在WordPress后台分类目录页码编辑你要获取分类ID的目录,在浏览器地址栏里面找到分类ID

在WordPress后台分类目录页码编辑你要获取分类ID的目录,在浏览器地址栏里面找到分类ID

在WordPress后台分类目录页码编辑你要获取分类ID的目录,在浏览器地址栏里面找到分类ID

如果你不需要每个分了设置独立的关键词,那么可以删除多余的elseif (is_category()) {  } (注意这个括号是一对一对的) 只保留下面这一个就行了.

elseif (is_category()) {
// 分类的description可以到后台 – 文章 -分类目录,修改分类的描述
$keywords = single_cat_title(,false);
$description = category_description();
}

4.关键词tag页面的关键词与描述调用

关键词id获取: 如何查看获取WordPress分类目录与标签和文章的ID

elseif (is_tag()){
// 标签的description可以到后台 – 文章 – 标签,修改标签的描述
$keywords = single_tag_title(,false);
$description = tag_description();
}

一样的,tag页面的keywords就是tag关键词的名称,描述的话也是tag关键词的名称.