首先先申明一下,小弟不是什么高手,甚至对PHP一点都不懂,所以有什么错误的地方,请大侠们指出。先看一下效果,http://www.xmxyk.net/html/ykxd/2009/1112/1131.html,在这篇文章里面有两个关键字,即“厦门信用卡”与“信用卡积分”。我在发布文章的时候都没有加上链接,现在都文章里面去看,是有链接的,所以这些链接都是自动加的。这其实也就是实现了DEDE自动加内链的功能。
! u% I; w# V& C' J4 K; u: n其实通过dede后台是可以直接设置的,但比较麻烦,搞不懂dede设计者这个这么重要的seo都没有设计。嘿嘿,以下我在dedecms V5.3中设置的步骤:8 W: E' w* g6 f( C9 d- m+ n
1、进入后台,系统,系统基本参数,核心设置,关键字替换(是/否),这里选择“是”。1 T1 v; Z) b( Z- S7 i
2、然后“采集”,“文档关键词维护”,在这里面设置关键词,指向网址。这里,我设置的是“厦门信用卡”与“信用卡积分”都链向http://www.xmxyk.net。注意:这里频率不是指关键词出现的次数。( f3 e! x7 Q9 E/ q" t+ N
3、在发布文章时,在“TAG标签”里,输入相应的关键词:厦门信用卡与信用卡积分。注意,使用dede后台设置,就必须这样设置,不然起不了作用。
( _7 S0 c* G' J这个功能是实现了,但很麻烦,我每次发文章的时候,在TAG标签里面都得输入相应的关键词,很麻烦。修改以下代码就可以不用设置第三步就可以实现自动加内链了。PS:这段代码是我在dedecms的论坛里面找到的,修改过可以实现这个功能,请大家放心使用,不过最好在修改前把文件备份一下。: ~2 f$ S$ m2 K, u' P
修改文件 /include/arc.archives.class.php ,找到这一段:
( s2 O* p: c+ W( N7 Z. \4 ]以下为引用的内容:; H3 u$ [! t: K7 c' Z( q) U
foreach($kws as $k)
% K& O! w3 y, Z/ g# V2 I& J) r {
' C8 P% E! F5 B- D& G3 M5 m $k = trim($k);0 `. ^+ @3 Q: O1 v- g5 K2 T3 w
if($k!="")0 v6 B0 f: M5 X. L4 F3 ~% {7 z
{
7 k# X1 Q: x% j- I0 M# @ if($i > $maxkey)' H& H5 v$ M. R" a# ?2 r
{
. e. [2 h7 g% Z& r) j* |! D, G) Y break;2 j5 J, U( f+ H, y
}2 |0 ^' C% @' P1 o( V" `# q
$myrow = $this->dsql->GetOne("select * from cz_keywords where keyword='$k' And rpurl<>'' ");; A( z) q" M0 B) Q8 K& ]
if(is_array($myrow)). H) n+ R2 `: Y- s. t
{
" [4 i5 b9 d# a# R! q $karr[] = $k;
Y& {6 H+ ^2 q/ ` R5 c5 S $GLOBALS['replaced'][$k] = 0;
, ~5 r4 S) w) [ Z1 g5 Q $kaarr[] = "<a href='{$myrow['rpurl']}'><u>$k</u></a>";& y4 ]9 M! _5 l) O$ |, I
}
! H6 k, g( r3 o $i++;
9 l' k* W: V+ N, a$ e }
7 u3 f% _) x" c6 q } |
- I7 x, u2 q5 X: p把它替换成:( ? H8 {; I$ `4 Y
以下为引用的内容:2 g# N; y* F8 Q, V; r: A
global $dsql;
9 S( _, k* k/ N, v/ ?6 k/ Z $query="SELECT * FROM cz_keywords WHERE rpurl<>'' ORDER BY rank DESC";2 O$ S/ m! t$ a8 l3 I& |4 d
$dsql->SetQuery($query);; d) ^) p/ ?1 _
$dsql->Execute();
6 L! I5 x( a @& k while($row = $dsql->GetArray())
8 x# K6 z/ C+ x& h3 ^# { ~ {
6 L& y' S% j' r' T $key = trim($row['keyword']); k. X2 `4 {. \% B
$key_url=trim($row['rpurl']);
% |* ~: B' q9 A, f $karr[] = $key;) P% \; X& x3 ]
$kaarr[] = "<a href='$key_url' target='_blank'><u>$key</u></a>";
& X2 e0 `- r( L& V3 Y) v9 P4 `$ t }
" C9 y$ A4 b1 K- _% Q) ~+ x |
$ C. H/ o# Z' e 通过以上代码,只要在“文档关键词维护”设置了带有链接的关键词,就可以实现在发布文章时自动就有会链接了。但相同的关键词出现了5次,这样就有5个链接,这样好像不太好,但我还没有找到解决的办法。希望有实现这个功能的高手指导一下。0 }, u' I) z5 `, l6 S
注:相关网站建设技巧阅读请移步到建站教程频道。 |
|