首先先申明一下,小弟不是什么高手,甚至对PHP一点都不懂,所以有什么错误的地方,请大侠们指出。先看一下效果,http://www.xmxyk.net/html/ykxd/2009/1112/1131.html,在这篇文章里面有两个关键字,即“厦门信用卡”与“信用卡积分”。我在发布文章的时候都没有加上链接,现在都文章里面去看,是有链接的,所以这些链接都是自动加的。这其实也就是实现了DEDE自动加内链的功能。
, v' ^; s# u5 }7 W5 \3 l1 v( u其实通过dede后台是可以直接设置的,但比较麻烦,搞不懂dede设计者这个这么重要的seo都没有设计。嘿嘿,以下我在dedecms V5.3中设置的步骤:8 ]; T/ O/ U5 J5 w2 F* Y, X
1、进入后台,系统,系统基本参数,核心设置,关键字替换(是/否),这里选择“是”。: G5 x% C. ~- n3 d2 r
2、然后“采集”,“文档关键词维护”,在这里面设置关键词,指向网址。这里,我设置的是“厦门信用卡”与“信用卡积分”都链向http://www.xmxyk.net。注意:这里频率不是指关键词出现的次数。( n: K3 X. H) U: Y9 v! d- W; c' f
3、在发布文章时,在“TAG标签”里,输入相应的关键词:厦门信用卡与信用卡积分。注意,使用dede后台设置,就必须这样设置,不然起不了作用。" |+ h; W) Y/ ?7 V
这个功能是实现了,但很麻烦,我每次发文章的时候,在TAG标签里面都得输入相应的关键词,很麻烦。修改以下代码就可以不用设置第三步就可以实现自动加内链了。PS:这段代码是我在dedecms的论坛里面找到的,修改过可以实现这个功能,请大家放心使用,不过最好在修改前把文件备份一下。
3 H, i+ y8 v4 }# l, s- R修改文件 /include/arc.archives.class.php ,找到这一段:
! }. w+ A6 @* M& L) N( x以下为引用的内容:
. O! v( j7 b7 x1 c% \/ R/ p$ Xforeach($kws as $k)8 R- b) K6 z/ N
{0 C9 V* b4 X3 { L, y8 o9 q
$k = trim($k);
5 S' K1 {% ~- v" s if($k!="")
: X7 d) B0 A. a( M% m {$ ?8 }6 o% P" j0 D1 f' Y
if($i > $maxkey)
, O* N* E- k. M3 s1 a3 s {
7 V+ @6 _- o+ J/ h+ g6 q break;6 w, K9 J2 s* a5 K( C
}9 _5 N- g' u+ L; L+ ~, L, F: _
$myrow = $this->dsql->GetOne("select * from cz_keywords where keyword='$k' And rpurl<>'' ");) j2 @4 y; K; a! A
if(is_array($myrow))4 D2 l4 ]8 o& E3 U& d$ M1 w' r
{
0 H7 y5 D$ j8 }- x" u, } $karr[] = $k;( G) Z( c* f' _" ^2 j: _
$GLOBALS['replaced'][$k] = 0;
: q2 A4 z! A/ [7 y3 ~, O $kaarr[] = "<a href='{$myrow['rpurl']}'><u>$k</u></a>";9 S, c: w/ z9 u+ ^. w, T/ o
}
; l! Z0 `% f0 g, R' B) x $i++;. q' j. |+ l+ W/ V- C) i2 Y
}# j7 Q6 V9 u& I3 z+ F7 x1 w
} |
2 R8 a4 `# E' {把它替换成:
3 R; F1 Q2 N, @ U1 Q4 H( L以下为引用的内容:/ g) |3 @) s% n5 S
global $dsql;6 i4 ?0 M. r4 E0 Q- s
$query="SELECT * FROM cz_keywords WHERE rpurl<>'' ORDER BY rank DESC";
4 ^1 o1 |/ T+ I# [7 K $dsql->SetQuery($query);& V* E; e4 ~: d( @
$dsql->Execute();& U. c8 d2 l. c# \& x) v
while($row = $dsql->GetArray())4 X c- O1 M9 P+ {
{
: U2 f' E G# h! T $key = trim($row['keyword']);$ n4 K" v1 s; `+ c
$key_url=trim($row['rpurl']);! e: a1 W: q( ~' C. @
$karr[] = $key;) o, q% U5 k$ [: U7 L
$kaarr[] = "<a href='$key_url' target='_blank'><u>$key</u></a>";. i5 a) }3 }$ R/ F l
}0 V3 C8 ^( E" f6 ~8 N
|
! l7 E/ e% ]6 ] 通过以上代码,只要在“文档关键词维护”设置了带有链接的关键词,就可以实现在发布文章时自动就有会链接了。但相同的关键词出现了5次,这样就有5个链接,这样好像不太好,但我还没有找到解决的办法。希望有实现这个功能的高手指导一下。5 a2 H, a7 l7 |2 \; ]9 V" b2 Q' f
注:相关网站建设技巧阅读请移步到建站教程频道。 |
|