返回列表 发新帖

使dede在发布文章时自动加上关键词链接

470.1k 10
kjeittccdf 发表于 2015-4-1 15:21:21|湖北 | 查看全部 阅读模式
首先先申明一下,小弟不是什么高手,甚至对PHP一点都不懂,所以有什么错误的地方,请大侠们指出。先看一下效果,http://www.xmxyk.net/html/ykxd/2009/1112/1131.html,在这篇文章里面有两个关键字,即“厦门信用卡”与“信用卡积分”。我在发布文章的时候都没有加上链接,现在都文章里面去看,是有链接的,所以这些链接都是自动加的。这其实也就是实现了DEDE自动加内链的功能。0 o7 h3 \. M/ m# I5 K+ l. w! b
其实通过dede后台是可以直接设置的,但比较麻烦,搞不懂dede设计者这个这么重要的seo都没有设计。嘿嘿,以下我在dedecms V5.3中设置的步骤:
6 k# n: R' K7 y1 R, A1、进入后台,系统,系统基本参数,核心设置,关键字替换(是/否),这里选择“是”。
* E4 v9 H7 Y3 t3 a- d6 ~8 V( l; n2、然后“采集”,“文档关键词维护”,在这里面设置关键词,指向网址。这里,我设置的是“厦门信用卡”与“信用卡积分”都链向http://www.xmxyk.net。注意:这里频率不是指关键词出现的次数。1 N) |6 G4 w! \; K% O3 o/ R& E* g
3、在发布文章时,在“TAG标签”里,输入相应的关键词:厦门信用卡与信用卡积分。注意,使用dede后台设置,就必须这样设置,不然起不了作用。
( \: |" S* d" C0 S1 P9 F; c/ }这个功能是实现了,但很麻烦,我每次发文章的时候,在TAG标签里面都得输入相应的关键词,很麻烦。修改以下代码就可以不用设置第三步就可以实现自动加内链了。PS:这段代码是我在dedecms的论坛里面找到的,修改过可以实现这个功能,请大家放心使用,不过最好在修改前把文件备份一下。
7 V: R* L  C* A* }修改文件 /include/arc.archives.class.php ,找到这一段:
0 Y( y2 ^. D0 p9 o$ R
以下为引用的内容:
; ?7 I% {( X) G* S$ Mforeach($kws as $k)
5 C& h! k4 O, p  i: t  {6 L; x/ R! R) q& v
   $k = trim($k);2 E) }% I' b1 ^9 j) m
   if($k!="")
7 Y5 }  ]0 |' z- M) x/ _3 O$ `' z   {
- E# M, d7 C! r' `9 g. }. B    if($i > $maxkey): f" y. p8 M( ]% |" e  [
    {0 I* L' t# n6 c4 _
     break;+ z* Q! N- y8 o& b0 n% b5 {
    }
' S2 E$ `" s2 M. W1 R    $myrow = $this->dsql->GetOne("select * from
cz_keywords where keyword='$k' And rpurl<>'' ");
, j  ]. s: @) v6 V- J; B    if(is_array($myrow))
9 B" d' l7 q/ N  B0 W) _0 n+ Q    {% S" Y" M3 f9 ^; |8 |, @
     $karr[] = $k;
7 _( Y9 D( U1 X0 r$ S3 W9 ]     $GLOBALS['replaced'][$k] = 0;2 W% t% c" ?  {: f1 e' F
     $kaarr[] = "<a href='{$myrow['rpurl']}'><u>$k</u></a>";
, y/ K! E: E: j) t* \2 s) |    }
1 m+ L6 X' b1 X! @    $i++;
9 b. j* B5 V% Y5 A* l   }
; V. f; o$ _$ D  }

8 n+ z& \8 J9 U2 {- j& Y把它替换成:6 R% s9 C: g8 K- R0 w- g* a- J
以下为引用的内容:
4 K& e0 x0 e2 D6 Yglobal $dsql;$ m9 m# b. x( B
        $query="SELECT * FROM
cz_keywords WHERE rpurl<>'' ORDER BY rank DESC";* S, {! y1 c0 P
        $dsql->SetQuery($query);+ [8 t& d) k" g; w6 @( f
        $dsql->Execute();4 v8 ?+ S/ X% z. n6 C- y0 @
        while($row = $dsql->GetArray())4 {2 F7 w* R5 \; @! v% N6 h! B
  {
. G" e$ S# D6 [$ k: y1 ~   $key = trim($row['keyword']);8 K9 p' q. c1 r' D" w  @# {
   $key_url=trim($row['rpurl']);' U6 e: T/ o6 Y8 J! z! l
   $karr[] = $key;
1 R, D! I5 n1 u   $kaarr[] = "<a href='$key_url' target='_blank'><u>$key</u></a>";" v/ \+ D5 o0 t; T; e+ z6 C
  }
: V6 Z% V, z3 n, E/ v8 r0 {
6 o! o, N( c+ t4 a8 V; G  r3 b. O
    通过以上代码,只要在“文档关键词维护”设置了带有链接的关键词,就可以实现在发布文章时自动就有会链接了。但相同的关键词出现了5次,这样就有5个链接,这样好像不太好,但我还没有找到解决的办法。希望有实现这个功能的高手指导一下。
! W% I$ z" b% ^) i0 c) k                                                                        注:相关网站建设技巧阅读请移步到建站教程频道。

回复|共 10 个

佚名 发表于 2015-4-11 10:08:59
我不是来抢沙发的,也不是来打酱油的。
佚名 发表于 2015-4-11 10:16:58
哦...这个...偶昨天就看了....
佚名 发表于 2015-4-11 09:54:56
我是来收集资料滴...
佚名 发表于 2015-4-11 09:50:07
看,刚说你眼神不好,你还就来劲了不是.
佚名 发表于 2015-4-11 10:15:14
老大,我好崇拜你哟
wwzcdenleclv 发表于 2015-12-22 22:49:10|INNA | 查看全部
卧虎藏龙里面半天云的人物个性。由此而言,作者是性格是完善的,想必经历过家庭的其 乐融融,也经历过种种人伦惨剧吧,把作者的创作潜质激发的淋漓尽致。
buingeEvineus 发表于 2015-12-22 22:49:49|斯洛伐克 | 查看全部
机会就像水中的鱼,耐心等待就能上钩。
alapScady 发表于 2015-12-22 22:49:45|美国 | 查看全部
我想骂我自己
Mqokjdvq 发表于 2015-12-22 22:49:51|河南 | 查看全部
唉!猪!你怎么了?
buingeEvineus 发表于 2015-12-22 22:48:42|美国 | 查看全部
真是有你的!

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 得知互动-专注Ai与站长技术交流社区-Ai交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表