DedeCms采集没有自动生成摘要和关键字的解决办法
如遇蓝奏网盘打不开lanzous替换成lanzoux尝试!
织梦5.6采集到了内容,可没有自动生成摘要和关键字,关键字和摘要都是空的。
可能很多人都遇到了和我一样的问题,在论坛实在没找到好的解决办法,就自己动手去改改文件。废话不多说了。
下面是我的解决办法
比如我采集了网站:http://www.52iphone8.com
首页的meta代码是:
Copy to Clipboard引用的内容:[www.dede58.com]
如果用dedecms的采集的时候就没有办法自动获取description和keywords的值的。
大家注意到了这段代码和其它网站的区别了没??
就是name=”description” 和 name=”keywords” 少了双引号””
这个可能是dedecms中自动分析关键字和摘要的一个bug吧,没有考虑到这种情况!
采集的选项里面也没有自己填写关键字和摘要的选项。那我只能自己动手修改文件了。
1、修改 include/dedecollection.class.php
Copy to Clipboard引用的内容:[www.dede58.com]
//自动分析关键字和摘要
preg_match(“/tmpHtml,$inarr);
preg_match(“/tmpHtml,$inarr2);
if(!isset($inarr[1]) && isset($inarr2[1]))
{
$inarr[1]=$inarr2[1];
}
用下面一段代码替换上面的
Copy to Clipboard引用的内容:[www.dede58.com]
//自动分析关键字和摘要
改了上面的, 还有另一个地方需要修改的
用下面的代码替换掉上面的:
涉及到文件:include/common.func.php
data/config.cache.inc.php
升级方法: INSERT INTO `dede_sysconfig` VALUES(14, ‘cfg_cookie_domain’, ‘cookie有效域’, 2, ‘bstring’, ”);
打开data/config.cache.inc.php 增加一行 $cfg_cookie_domain=”;
打开include/common.func.php 查找 function PutCookie,将此函数替换为:
Copy to Clipboard引用的内容:[www.dede58.com]
function PutCookie($key,$value,$kptime=0,$pa=”/”)
{
global $cfg_cookie_encode,$cfg_cookie_domain;
setcookie($key,$value,time()+$kptime,$pa,$cfg_cookie_domain);
setcookie($key.’__ckMd5′,substr(md5($cfg_cookie_encode.$value),0,16),time()+$kptime,$pa,$cfg_cookie_domain);
}
可能有人就要问了,为什么要增加cookie有效域
其次后期我们还要对session的处理进行一些修改,以保证验证码在其它二级域名下有效等….
DEDECMS是一个强大的CMS,后期我想用DEDECMS开发一个多用户BLOG,不知道要有朋友多不?
有要的可以联系我,大家一起开发,或者提供一些赞助。以方便后期的源码共享!
DedeCms中channel 用typeid调用无法达目的吗?请换成type试试!
{dede:channel type=’son’ typeid=’19’ row=’1′}[field:typename function=’cn_substr(@me,8)’/]{/dede:channel}
typeid=19为一个栏目下的第二个子栏目,在模版中想调取这个栏目的信息,用channel 虽然有解决办法,但是很繁琐,其实用{dede:type标签就很好实现了 :
如下
{dede:type typeid=’19’ }[field:typename function=’cn_substr(@me,8)’/]{/dede:type }