求dedecms文章内容页添加tags标签的方法是什么?谢谢

求dedecms文章内容页添加tags标签的方法是什么?谢谢,第1张

$dsql->SetQuery("Select  aaid,atypeid,aimg_up,aimg_link,bid,bchannel,btypeid  From  dede_addonarticle a LEFT JOIN   dede_archives  b on btypeid=atypeid  where bchannel=17 and atypeid=14  order by bid desc limit 0,5");

试试吧

方法和详细的操作步骤如下:

1、第一步,打开织梦Dedecms的主界面,直接找到“增加顶级栏目”选项并选择跳转,见下图,转到下面的步骤。

2、第二步,执行完上面的操作之后,进入新对话框,根据实际情况进行设置,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,请单击“确定”按钮,见下图,转到下面的步骤。

4、第四步,执行完上面的操作之后,可以调用当前栏目的文章列表,见下图。这样,就解决了这个问题了。

Tag标签是web20的东西,相当于关键词。我们在使用dedecms的时候应该如何在文章内容页添加TAG标签功能呢Tag标签对于SEO帮助很大,具体修改方法有以下2种方法:

方法一:打开文章模板文件article_articlehtm;在{dede:fieldbody/}后面添加以下代码:

<div>

TAG标签:{dede:tag row='30' sort='new' getall='0'} <a href='[field:link/]'>[field:tag /]</a>{/dede:tag}

</div>

更新生成文档页,再查看效果。

方法二:织梦dedecms文章页调用Tag标签比较简单,1、找到文章模板在{dede:fieldbody/}后面加入{dede:fieldtags/}这个标签即可。但是织梦dedecms默认的Tag标签是没有链接的,接下来进行第二步。

2、给Tag标签加超链接

大家找到网站跟目录下的/include/helpers/archivehelperphp,找到120行左右。

if ( ! function_exists('GetTags'))

{

function GetTags($aid)

{

global $dsql;

$tags = '';

$query = "SELECT tag FROM `dede_taglist` WHERE aid='$aid' ";

$dsql->Execute('tag',$query);

while($row = $dsql->GetArray('tag'))

{

$tags = ($tags=='' $row['tag'] : ','$row['tag']);

}

return $tags;

}

}

替换成以下代码:

if ( ! function_exists('GetTags'))

{

function GetTags($aid)

{

global $dsql;

$tags = '';

$query = "SELECT tag FROM `dede_taglist` WHERE aid='$aid' ";

$dsql->Execute('tag',$query);

while($row = $dsql->GetArray('tag'))

{

$tags = ($tags=='' ''$row['tag']'': ',''

'$row['tag']''); }

return $tags;

}}

{dede:channel type='self' currentstyle="<a href=listphptid='field:id'>~typename~</a>"}

<a href="listphptid=[field:id/]">[field:typename/]</a>

{/dede:channel}

不知道是不是你要的效果。

将以下函数放入include/extendfuncphp

//统计栏目文章数

function GetTotalArc($tid){

global $dsql;

$sql = GetSonIds($tid);

$row = $dsql->GetOne("Select count(id) as dd From `#@__archives` where typeid

in({$sql})");

return $row['dd'];

}

//统计当前栏目信息数

function dynamic_num($current_id){

global $dsql;

//读取当前栏目的子ID

$sql = "SELECT id FROM `#@__arctype` WHERE id='$current_id' ||

topid='$current_id'";

$dsql->SetQuery($sql);

$dsql->Execute();

while($row = $dsql->GetArray()){

$arr[]=$row[id];

}

foreach($arr as $key=>$value){

$type = $value  ',';

}

$ty= ""$type"0";

//echo $ty;

$t_num = $dsql->GetOne("select count() as num from `#@__archives` where typeid

in($ty)");

//echo $t_num[num];

if(is_array($t_num)){

return " "$t_num[num]" ";

}else{

return "0" ;

}

}

   

模板中使用以下标签调用:

{dede:field name=’typename’/}</b>(此栏目共{dede:type}[field:id 

function="dynamic_num(@me)" /]{/dede:type}条记录)

{dede:channel type=’son’ }

<li><a href=’[field:typelink/]‘>[field:typename/]</a>(<span>[field:ID 

runphp='yes'] @me = GetTotalArc(@me);[/field:ID]</span>)</li>

{/dede:channel}

以上代码是两个函数,一个统计栏目文章数,另一个统计当前栏目信息数。

在\dede\include\extendfuncphp文件中添加如下函数:

function getArticleList($category=0,$order="",$limit="0,200"){

global $dsql;

$query = "SELECT arc,tptypedir,tptypename,tpcorank,tpisdefault,tpdefaultname,tpnamerule,

        tpnamerule2,tpispart,tpmoresite,tpsiteurl,tpsitepath

        FROM `#@__archives` arc LEFT JOIN `#@__arctype` tp on arctypeid=tpid

        where tpid=$category";

//此sql语句我只加了where判断文章所属分类

//其他的order limit 你根据需要自己添加

$dsql->SetQuery($query);

$dsql->Execute('lit');

$arr = array();

$cnt = 0;

$str = "";

while ($row = $dsql->GetArray('lit')) {

if($cnt%4 == 0){

$str = "<div class='css1'>";

}

if($cnt%4 > 0){

$class = "css3";

}else{

$class = "css2";

}

$str = "<span class='"$class"'>"$row['title']"</span>";

$cnt++;

if($cnt%4 == 0){

$str = "</div>";

}

//$row中可用的常用字段如下:$row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'], row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']

}

return $str;

}

然后在模板中使用 

{dede:field name='typeid' function="getArticleList(@me)" /}

将分类的id传给此函数就可以调用到数据,输出就是你要的格式。

输出内容你修改下php文件,常用字段都给你写在注释里了。

如果可以请也将我昨天给你回答的采纳一下。

调用顶级栏目标签:{dede:channel row='20'  type ='top'    }{/dede:channel}

调用子栏目{dede:channel row='20'  type ='son' typeid ='1'   }{/dede:channel}

栏目名称[field:typename/]

栏目链接[field:typelink/]

dede:

是织梦内容管理系统dedecms的简称, 以简单、实用、开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统,系统作者仅有一人,却做出如此功能的cms。最新的版本无论在功能,还是易用性方面,都有了长足的发展。DedeCms免费版的主要目标用户锁定在个人站长,功能更专注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用本系统。dede织梦内容管理系统(DedeCms)基于PHP+MySQL的技术架构,完全开源加上强大稳定的技术架构,使你无论是打算做个小型网站,还是想让网站在不断壮大后系仍能得到随意扩充都有充分的保证。

DedeCMS最适合应用于以下领域:

企业网站,无论大型还是中小型企业,利用网络传递信息在一定程度上提高了办事的效率,提高企业的竞争力;

政府机关,通过建立政府门户,有利于各种信息和资源的整合,为政府和社会公众之间加强联系和沟通,从而使政府可以更快、更便捷、更有效开展工作;

教育机构,通过网络信息的引入,使得教育机构之间及教育机构内部和教育者之间进行信息传递,全面提升教育类网站的层面;

媒体机构,互联网这种新媒体已经强而有力的冲击了传统媒体,在这个演变过程中,各类媒体机构应对自己核心有一个重新认识和重新发展的过程,建立一个数字技术平台以适应数字化时代的需求;

行业网站,针对不同行业,强化内部的信息划分,体现行业的特色,网站含有行业的动态信息、产品、市场、技术、人才等信息,树立行业信息权威形象,为行业内产品供应链管理,提供实际的商业机会;

个人站长,兴趣为主导,建立各种题材新颖,内容丰富的网站,通过共同兴趣的信息交流,可让您形成自己具有特色的用户圈,产生个人需求,并为其服务,个人用户完全免费使用;

收费网站,内容收费类型的网站,用户可以在线提供产品销售,或者内容收费,简单清晰的盈利模式,确保您以最小的投资,取得最大的回报。

可以这么用<php echo $val >

{dede:sql sql="SELECT FROM shop_room where shopid="<php echo $shopid>" ORDER BY `sort_id`"}

{/dede:sql}

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 求dedecms文章内容页添加tags标签的方法是什么?谢谢

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情