WordPress有很多SEO插件来帮助进行搜索引擎优化。如果你不想使用插件,下面这个高效的代码,将使你的博客对搜索引擎更加友好。
将下面代码粘贴到你的functions.php文件:
- function basic_wp_seo() {
- global $page, $paged, $post;
- $default_keywords = 'wordpress, plugins, themes, design, dev, development, security, htaccess, apache, php, sql, html, css, jquery, javascript, tutorials'; // customize
- $output = '';
- // description
- $seo_desc = get_post_meta($post->ID, 'mm_seo_desc', true);
- $description = get_bloginfo('description', 'display');
- $pagedata = get_post($post->ID);
- if (is_singular()) {
- if (!empty($seo_desc)) {
- $content = $seo_desc;
- } else if (!empty($pagedata)) {
- $content = apply_filters('the_excerpt_rss', $pagedata->post_content);
- $content = substr(trim(strip_tags($content)), 0, 155);
- $content = preg_replace('#\n#', ' ', $content);
- $content = preg_replace('#\s{2,}#', ' ', $content);
- $content = trim($content);
- }
- } else {
- $content = $description;
- }
- $output .= '<meta name="description" content="' . esc_attr($content) . '">' . "\n";
- // keywords
- $keys = get_post_meta($post->ID, 'mm_seo_keywords', true);
- $cats = get_the_category();
- $tags = get_the_tags();
- if (empty($keys)) {
- if (!empty($cats)) foreach($cats as $cat) $keys .= $cat->name . ', ';
- if (!empty($tags)) foreach($tags as $tag) $keys .= $tag->name . ', ';
- $keys .= $default_keywords;
- }
- $output .= "\t\t" . '<meta name="keywords" content="' . esc_attr($keys) . '">' . "\n";
- // robots
- if (is_category() || is_tag()) {
- $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
- if ($paged > 1) {
- $output .= "\t\t" . '<meta name="robots" content="noindex,follow">' . "\n";
- } else {
- $output .= "\t\t" . '<meta name="robots" content="index,follow">' . "\n";
- }
- } else if (is_home() || is_singular()) {
- $output .= "\t\t" . '<meta name="robots" content="index,follow">' . "\n";
- } else {
- $output .= "\t\t" . '<meta name="robots" content="noindex,follow">' . "\n";
- }
- // title
- $title_custom = get_post_meta($post->ID, 'mm_seo_title', true);
- $url = ltrim(esc_url($_SERVER['REQUEST_URI']), '/');
- $name = get_bloginfo('name', 'display');
- $title = trim(wp_title('', false));
- $cat = single_cat_title('', false);
- $tag = single_tag_title('', false);
- $search = get_search_query();
- if (!empty($title_custom)) $title = $title_custom;
- if ($paged >= 2 || $page >= 2) $page_number = ' | ' . sprintf('Page %s', max($paged, $page));
- else $page_number = '';
- if (is_home() || is_front_page()) $seo_title = $name . ' | ' . $description;
- elseif (is_singular()) $seo_title = $title . ' | ' . $name;
- elseif (is_tag()) $seo_title = 'Tag Archive: ' . $tag . ' | ' . $name;
- elseif (is_category()) $seo_title = 'Category Archive: ' . $cat . ' | ' . $name;
- elseif (is_archive()) $seo_title = 'Archive: ' . $title . ' | ' . $name;
- elseif (is_search()) $seo_title = 'Search: ' . $search . ' | ' . $name;
- elseif (is_404()) $seo_title = '404 - Not Found: ' . $url . ' | ' . $name;
- else $seo_title = $name . ' | ' . $description;
- $output .= "\t\t" . '<title>' . esc_attr($seo_title . $page_number) . '</title>' . "\n";
- return $output;
- }
需修改一下$default_keywords 后面默认的关键字
使用方法:用下面代码:
- <?php echo basic_wp_seo(); ?>
替换主题header.php模板
- <title></title>
注:可能不同的主题有所区别
可惜这段SEO代码对中文支持不好
本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!

我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
1F
实用 谢谢鸟哥
B1
@ 微视觉 同样的模板还是做不到知更鸟水平啊,还要学习啊
2F
嘿嘿,不懂是通过什么技术来实现的。但是鸟哥分享的东西都是精品啊。我也来用上。
B1
@ martin 嗯嗯,我也准备用一下,争取多点用户来看我的网站。
3F
只要是精品我都收
4F
鸟哥你的主题里面没有 这个。
B1
@ 福利投资 主题已集成相同功能的代码
不过老外写的这个也不错,可惜不支持中文
B2
@ 知更鸟 鸟哥 能把你这个站点的主题分享一下吗 很喜欢啊
5F
可惜这段SEO代码对中文支持不好,叫我用好还是不用好呢…好纠结啊
6F
不错,挺实用的
7F
感谢老大分享,不过用插件挺方便的,呵呵
8F
老外的代码写的确实精简实用。
9F
我做的是英文站,看来可以用哈,谢谢分享
10F
一直用插件啊。换成这个原先的设置都会没掉啊~~~
11F
不懂代码的路过~
12F
不懂代码的只能路过了!悲剧啊!
13F
这个不错,学习了
14F
我喜欢你左边的分享
15F
效果如何?
16F
这个应该是apache下面才能用的吧www.splaybow.com
17F
一直用插件啊。换成这个原先的设置都会没掉啊
18F
之前也一直在用插件,但总是要输入些内容,用代码就自动获取还是很方便又有效。
19F
不做SEO 就是最好的SEO
20F
谢谢鸟哥分享!
21F
mark!回头试试
22F
很欣赏你的网站,不知道是否换友链,我的博客网站得到了很多人的支持,我希望你也能支持一下我,可以加下我的QQ吗?我坚持写博已经1年了,都是原创,但是最近工作压力很大,不知道wordpress是否做一个英语培训网站,鸟哥,敬佩你。
23F
这是什么原理啊?能不讲下啊?
24F
鸟哥,请问一下在如何在首页调用某分类第一篇显示摘要下面的显示标题的代码
B1
@ 大树 代码都在我这个免费主题,自已研究一下吧
B2
@ 知更鸟 鸟哥我技术特烂,能麻烦您一下发一些代码可以吗麻烦了拜托了
B3
@ 大树 代码就在那,如果看不懂我再给你发一下有什么用?
B4
@ 知更鸟 恩,是的谢谢你鸟哥我去好好研究一下
25F
谢谢
26F
乌哥的这个还是不错的。
27F
谢谢分享!内容非常好
28F
小白路过,能分享下那个seo的插件吗?
29F
超级期待鸟哥的扁平化主题啊!
30F
OMG,恐怖的代码
31F
网站速度挺快!用的什么配置的服务器啊?
B1
@ ACM之家 云主机
http://idc.wopus.org/host/yun/
32F
分类标签没有关键词和描述
33F
一般好点的主题都会注意这些东西的。
34F
代码很不错
35F
代码加在 那里??
36F
一直用不大习惯。wp的程序。。。
37F
挺不错的
38F
鸟哥的主题实际上SEO就是很符合的,我非常喜欢!
39F
这个对seo究竟有多大的作用啊
40F
挺好的嘛
41F
很实用。
42F
目前都是直接改模板,不太方便
43F
鸟哥,您老给答应给我做logo的呢?怕您忙,弱弱的问一句……
44F
看起来很吊啊,回头试试~
45F
我相信鸟哥会汉化之后加入到新版的主题中,鸟哥,你是最棒的!!我很期待!
46F
过来看看了 纯代码还是受蜘蛛喜欢的
47F
虽然看不懂其主要作用,但是鸟哥必出精品哈。
48F
你好,博主,有问题想要请教你,为什么在360浏览器下,友情链接就显示成竖排了呢?
B1
@ 谢虎臣 经测试250+110浏览器6.3版一切正常
49F
学习了
50F
这个我喜欢..收下了
51F
不错,先收藏
52F
可以我的wordpress版本和主题都要经常升级,改了下升级就变回来了
53F
代码确实是好代码,但是对中文支持好像不是太好,希望博主能改进一下
54F
最近发现知更鸟的站内搜索在SEO方面存在问题,我写了段关于站内搜索的优化代码,详见:http://www.dnsoso.com/zhigengniao-search-seo/