1.隐藏内容页(viewthread)中的无用信息:
实施方案
}else{require_once DISCUZ_ROOT.'./include/bmt.forum.inc.php'; Disallow: /pm
当然也可以在截取之前用strip_tags去除html标签,可能效率会差了。 修改 forumdisplay.php 文件:
3.1修改 forumdisplay.php
#如果有个水版,不想禁止游客权限,也不想SE收录,已免影响网站质量,可以用如下方法将它们第一行的 {template header} 替换为 {template header_disbots} DZ 禁止一个版面帖子的收录的补充 break;
最后一行作用是过滤内容中的html,否则在meta中会引起语法错误。先是去除HTML标签,但因为这里是前100字,有可能html标签已经被截断了,所以又用了htmlspecialchars转义一下,有可能会有些垃圾信息。
discuz有个archiver,一是URL容易收录,二是页面比较干静,还有description会从正文中取内容,但archiver没有对内容中[b][url]之类的解析,那些标签起不到作用,原样显示还会增加垃圾信息。
将后两个 require_once DISCUZ_ROOT.'./viewthread.php'; 语句替换为
Disallow: /misc
语句中的page就是forumdisplay page,这样改后不管帖子在列表页的第几页,这个数都是1。
<?php
文件,在 include template('forumdisplay'); 语句上面添加
switch ( $forum['fid'] ){
提示信息页的网页复制
redirect的301重定向
2.1修改 viewthread.php 文件:
方案二:定制meta
#数字即为要禁止版块的ID。
方案一:删除meta
Disallow: /viewthread.phpDisallow: /forum-1-
$seodescription = current( $postlist );//description取文章内容的前100字
<meta name="description" content="$seodescription" />
2.内容页(viewthread)设置keywords为帖子标题,description为内容前100字
内容同 header.htm 文件,但加入meta robot标签,如下 header("Location: {$boardurl}".$indexname);修改文件 templates/default/misc.lang.php:将下面两行改成您喜欢的内容:
修改 redirect.php 文件:content的优化
在后台设置即可。(如果2、3不做,则meta也同主页)
Disallow: /profile
User-agent: *
Disallow: /my<h1>$post[subject]</h1> $extra = rawurlencode("page=1$forumdisplayadd");
#禁止其它无用内容
$seodescription = htmlspecialchars( strip_tags($seodescription) );
这两个标签作用很小了,而且还有discuz自带的一些无用信息,用得不好反而会有坏作用,因此宁缺勿滥。
Disallow: /forumdisplay.php
准确的说是当游客(bots)访问时,隐藏那些信息,当用户登录后是正常的,所以不影响使用。
if(!defined('IN_DISCUZ')) { exit('Access Denied'); }
discuz的后台可以对meta信息进行设置,甚至可以添加自己的头部信息,但它的设置都是针对于所有页面的,全部页面都拥有相同的keywords和description是SEO所不赞成的。
[更新]补充方法:再给内容页加meta robot禁止2.2创建 include/bmt.thread.inc.php 文件,内容为
header('HTTP/1.1 301 Moved Permanently');header( $bmt_url );
# ... ... 等等
<h1>
#这个是内容页的动态形式,前面对伪静态做了优化并修改了很多的复制网页,因此这里动态形式如打印页等一定要禁止 修改内容页模板文件 templates/default/viewthread.htm: Disallow: /faq
这个问题和内容页也有着很大的关系,呵呵。如管理员设置允许游客浏览列表,而禁止浏览内容时,这些内容页都将返回一没有权限的提示信息页,但它们的 URL 是不同的,这样就形成了严重的网页复制,此外还有其它形成的无权操作等。别一种提示信息如帖子不存在等,数量大了也会形成网页复制。这两种提示信息,都是 通过showmessage函数分别调用nopermission.htm和showmessage.htm两个模板实现的。
将 $extra = rawurlencode("page=$page$forumdisplayadd"); 语句替换为
设discuz已启用伪静态功能,使用5.0/5.5 GBK 版本;
<meta name="robots" content="noindex,nofollow" />
???好像没有影响锚点 $bmt_url='Location:/thread-'.$tid.'-1-1.html';if(!defined('IN_DISCUZ')) { exit('Access Denied'); }
别外说明,此处数据都是viewthread.php已取好的,所以不会产生额外的数据库操作,只是做了字符串处理,不会引响效率。
三、robots.txt使用
} $seodescription = 'xxxx xxxx xxxx';Disallow: /blog
<meta name="keywords" content="{$metakeywords}$seokeywords" />
#用户信息,不知为什么discuz也静态化了,一律禁止
case 1: //此数字为版的ID号,不同版设置不同的meta