作者:好人杨华_840 | 来源:互联网 | 2023-01-13 12:19
小编给大家分享一下实现dede调用指定栏目下相关文章的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
dede调用指定栏目下相关文章怎么实现?
首先明确要达到两个要求:
推荐学习:织梦cms
1、要调用指定栏目
2、调用的文章要包含指定关键字
相关文档调用
{dede:likeart titlelen=’24′ row=’10′}
[field:title /]
{/dede:likeart}
注:此为dede官方的调用模板,但至今不清楚调用依据!
指定栏目调用
{dede:arclist typeid='栏目ID' row='10' titlelen='20'}
[field:textlink/]
{/dede:arclist}
下面是我自己要达到的效果:
指定栏目(ID=4)相关新闻(keyword要调用关键字或title)的调用
{dede:arclist typeid='4' row='10' titlelen='20' keyword=''}
[field:textlink/]
{/dede:arclist}
代码1
效果1:
代码2:
效果2:
到这里你如果是只是单一关键词的话那就可以了。下面的关键是我的关键词要去调用:即keyword='{dede:field name='keywords’/}' 或者我调用标题
keyword='{dede:field name='title'/}'
不过这种很少用,因为是调用模板。没人愿意所有的文章都调用同一个关键字吧!
博主推荐方法:
--------------------------------------------------------------------------------------
放在文章模板页内
{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”@me”)’/}
就表示是取所有栏目内的相关文章(与当前文章的关键字相关),标题长度最大32,最多显示10条,不显示缩略图
或
{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”高三语文”)’/}
可以找到标题里,含有“高三 语文”,或者含有“高三”或“语文”的文章
例如,这一段:
相关文章
{dede:likeart titlelen=’24′ row=’10′}
[field:textlink/]<>
{/dede:likeart}
就改成:
相关文章
{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”@me”)’/}
根据关键字来相关文章,就用户体验以及SEO来说都是非常好的
唯一不好的地方就是生成静态的时候会慢很多
--------------------------------------------------------------------------------------------------
附1:arclist 中 keyword 怎样调用当前文档的关键字(dedecms织梦技术论坛)
附2: {dede:arclist}的学习心得,调用文章或者软件任何字段
附3、dedecms实现{dede:arclist keyword=&#39;[field:title/]&#39;}效果
【Arclist 标记】 这个标记是DedeCms最常用的一个标记,也叫自由列表标记,其中 hotart、coolart、likeart、artlist、imglist、imginfolist、specart、autolist 这些标记都是由这个标记所定义的不同属性延伸出来的别名标记。 功能说明:获取指定的文档列表 适用范围:封面模板、列表模板、文档模板 基本语法:
{dede:arclist typeid=&#39;&#39; row=&#39;&#39; col=&#39;&#39; titlelen=&#39;&#39; infolen=&#39;&#39;
imgbrush:php;toolbar:false">ID(同 id),title,iscommend,color,typeid,ismake,description(同 info),writer,shorttitle,memberid
pubdate,senddate,arcrank,click,litpic(同 picname),typedir,typename,
arcurl(同 filename),typeurl,stime(pubdate 的"0000-00-00"格式),
textlink,typelink,imglink,image
其中:
textlink = title
typelink = typename
imglink =
image = {dede:arclist infolen=&#39;100&#39;}
[field:textlink/]
[field:info/]
{/dede:arclist}
注:底层模板里的Field实现也是织梦标记的一种形式,因此支持使用PHP语法,Function扩展等功能
如: 给当天发布的内容加上 (new) 标志
[field:senddate runphp=&#39;yes&#39;]
$ntime = time();
$Oneday= 3600 * 24;
if(($ntime - @me)<$oneday) @me = "(new)";
else @me = "";
[/field:senddate]
以上是实现dede调用指定栏目下相关文章的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程笔记行业资讯频道!