首页 > 快乐分享 > 又一次折腾了meta

又一次折腾了meta

2009年5月28日 浏览:201

想优化WP博客的人,我个人建议还是抛弃插件的好.all in one seo这个插件,还是不要用的好.下面简单的说下我是怎么修改title和meta的,可能和网上很多教程差不多,甚至是一样的.不可否则,我也是从那些学来的,感谢分享的童鞋们.

首先是title的修改,默认的是:文章名>>分类名>>博客名,具体我真的是忘记了.不管怎么样,总之我就是不喜欢那样子,这也看出了我是一个喜欢折腾的人.当然,前提是有时间的情况下.

看代码:

1
<title><?php if (is_home()) { ?>灰狼博客|灰狼blog|互联网IT资讯|WEB开发技术 - itlobo.com<?php } else {?><?php wp_title(''); ?> | 灰狼博客 - itlobo.com<?php } ?></title>

然后,我的meta中,keywords 和 description 的设置如下:
(这个代码,我是放在title前的,当然,位置只要在keywords等之前就好了.)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
	if (is_home()) {
		$description = "描述";
		$keywords = "关键词";
	} else if (is_single()) {
		if ($post->post_excerpt) {
		$description = $post->post_excerpt;
		} else {
		$description = substr(strip_tags($post->post_content),0,220);
		}
		$keywords = "";
		$tags = wp_get_post_tags($post->ID);
		foreach ($tags as $tag ) {
		$keywords = $keywords . $tag->name . ", ";
		}
	} else if (is_category()) {
		$description = category_description();
	}
?>

刚才修改了,就是 description 自动截取文章的200字.如果你有写excerpt(摘要)的话,就按照excerpt来输出.

做完以上的,还要写一个meta输出的,之前忘记写了.代码如下:
(代码位置:title后,一般是这样子.追求个性的除外!)

1
2
<meta name="description" content="<?=$keywords?>" />
<meta name="keywords" content="<?=$description?>" />

最后建议一点:编辑这些代码,使用稍微高级一点的编辑器,例如EditPlus,其他的也可以.别使用windows系统自带的记事本,会出问题的. [点击这里到下载基地,下载EditPlus编辑器.记住文件名是itlobo_EditPlus.zip]

声明: 转载本博原创文章请注明 文章转载自: 灰狼博客, 原文地址:又一次折腾了meta
  1. 2009年5月29日23:03 | #1

    博主好:

    我也是用inove主题的。谢谢你提供的这篇日记,我看了,但不知道该到这段代码放到哪个见面里才能正常的显示,请求博主帮忙?谢谢!

  2. 2009年5月30日01:13 | #2

    @yimin
    你好,第一个代码title是直接覆盖templates/start.php的title的,当然,我是直接把名字给写到页面的,页面的话,你把我的文字去掉就是只输出标题的了.
    第二个代码是放在title前,然后在title后面加第三个代码,现在补上第三个代码.之前忘记写了.

  3. 2009年5月30日10:05 | #3

    博主好:

    你的第三段代码有误。我修改后,按照你的方式放到templates/start.php里面后,我的网站打不开。然后恢复到原来的,就能打开了。

    我参考了MG12的blocks2主题,它里面的代码是这样写的:

    <meta http-equiv=”Content-Type” content=”; charset=” />

    post_title;
    $keywords = “”;
    $tags = wp_get_post_tags($post->ID);
    foreach ($tags as $tag ) {
    $keywords = $keywords . $tag->name . “, “;
    }
    } else if (is_category()) {
    $description = category_description();
    }
    ?>
    <meta name=”keywords” content=”" />
    <meta name=”description” content=”" />

    对于我PHP一点都不懂,真的不知道该怎么解决。再次打扰博主!谢谢!

  4. 2009年5月30日10:08 | #4

    以上的代码没有完整的显示!

  5. 2009年5月30日12:39 | #5

    请看我文章的代码.显示正常!

  6. 2009年5月30日13:16 | #6

    谢谢博主,终于正常显示!

  7. 2009年5月30日13:25 | #7

    博主好:

    还是有乱码,首页的标题只能显示英文的,中文显示为乱码!

    其它页面显示正常!

  8. 2009年5月30日14:53 | #8

    还是没有看我最后写的一点提示,你是用记事本编辑的!肯定乱码

  9. 2009年5月30日17:47 | #9

    我原先是用Dreamweaver编辑的,后来下载了博主推荐的编辑器,还是一样的!

  10. 2009年5月30日20:47 | #10

    博主好:

    我要保存时,选择了UTF-8,现在就能正常显示了,谢谢博主的多次解答,谢谢!

  11. 2009年6月4日10:08 | #11

    很好,谢谢了

  1. 本文目前尚无任何 trackbacks 和 pingbacks.

注意:评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如,ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC.请务必注意user必须和评论者名相匹配(大小写一致).