最近很多小伙伴都在问dedecms织梦相关新闻标签likearticle调用自定义字段和织梦相关文章调用这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展dedecms列表dede:
最近很多小伙伴都在问dedecms织梦相关新闻标签likearticle调用自定义字段和织梦相关文章调用这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展dedecms列表dede:arclist调用自定义字段内容、dedeCMS怎么使用arclist标签调用自定义字段、DedeCMS标签likearticle调用全站相关文章支持排序、DedeCMS标签likearticle调用全站相关新闻支持排序等相关知识,下面开始了哦!
本文目录一览:- dedecms织梦相关新闻标签likearticle调用自定义字段(织梦相关文章调用)
- dedecms列表dede:arclist调用自定义字段内容
- dedeCMS怎么使用arclist标签调用自定义字段
- DedeCMS标签likearticle调用全站相关文章支持排序
- DedeCMS标签likearticle调用全站相关新闻支持排序
dedecms织梦相关新闻标签likearticle调用自定义字段(织梦相关文章调用)
在Dedecms新闻页中我们经常会显示相关新闻之类的新闻列表,就需要使用{dede:likearticle}标签,但是默认的likearticle是不能显示自定义的附加字段的。
解决方案
打开 include/taglib/likearticle.lib.php 找到
1
if($keyword != '')
在它的上面加入
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//获得附加表的相关信息
$addField = "";
$addJoin = "";
if(is_object($refObj->ChannelUnit))
{
$addtable = $refObj->ChannelUnit->ChannelInfos['addtable'];
if($addtable!="")
{
$addJoin = " LEFT JOIN $addtable ON arc.id = ".$addtable.".aid ";
$addField = "";
$fields = explode(",",$refObj->ChannelUnit->ChannelInfos['listfields']);
foreach($fields as $k=>$v)
{
$nfields[$v] = $k;
}
foreach($refObj->ChannelUnit->ChannelFields as $k=>$arr)
{
if(isset($nfields[$k]))
{
if(!empty($arr['rename']))
{
$addField .= ",".$addtable.".".$k." as ".$arr['rename'];
}
else
{
$addField .= ",".$addtable.".".$k;
}
}
}
}
}
继续搜索
1
tp.sitepath
改成
1
tp.sitepath $addField
有2处,都要修改
继续搜索
1
arc.typeid=tp.id
改成
1
arc.typeid=tp.id $addJoin
有2处,都要需改
源码中调用自定义字段
1
2
3
4
{dede:likearticle row='10' col='' titlelen='100' infolen='200'}
<a href="[field:arcurl/]">[field:title/]</a>
<p>价格:¥[field:jiage/]</p>
本文章网址:http://www.ppssdd.com/code/12148.html。转载请保留出处,谢谢合作!dedecms列表dede:arclist调用自定义字段内容
Dedecms列表dede:arclist调用自定义字段内容有2种办法。
1、调用channelid属性及addfields字段。举例:
{dede:arclist addfields=’video_description,video_id’ row=’8′ channelid=’3′} [field:video_description /] – [field:video_id /] - <a href="https://www.360muye.cn/">[field:title /]</a> {/dede:arclist}
2、通过PHP代码实现。举例:
{dede:arclist titlelen='26' row='20' orderby='id'} [field:id runPHP="yes"] $dsql = new Dedesql(false); $a="SELECT * FROM dede_addongame_tg where aid=@me"; $arcRow = $dsql->Getone($a); @me='url="'.$arcRow[sptype].'" leixing="'.$arcRow[model]; [/field:id] {/dede:arclist}
通过上面的两种方法均可调用织梦dede:arclist的自定义字段内容。转载请注明:木业网
dedeCMS怎么使用arclist标签调用自定义字段
本文实例讲述了dedeCMS使用arclist标签调用自定义字段的方法。分享给大家供大家参考。具体分析如下:
推荐学习:织梦cms
其实方法非常的简单我们只要使用addfields就可以实现增加自定自段了,不过有一点需要注意的是如果你在在后面加的我们需要把底层给选中,否则是可能调用不到字段的.
语法代码如下:
代码如下:
{dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'} [field:textlink /] [field:附加字段1/] [field:附加字段2/]< [field:附加字段3/]< {/dede:arclist}
实例代码如下:
代码如下:
{dede:arclist flag='c' typeid='23' channelid='1' addfields='tpic2' limit='0,8'} <div> <a title="[field:title /]" href="#"> @@##@@ </a> </div> {/dede:arclist}
要求:
1、指定 channelid 属性
2、指定要获得的字段 addfields=''字段1,字段''
3、必须选择 使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择),这个可以用来做普通的文字类型,如果要是图片的类型的话会出现.代码如下:
代码如下:
{dede:img text='' width='270' height='129'} /uploads/101017/1-10101H21F54P.gif {/dede:img} 这明显不是我们想要的,这个时候我们弄一个自定函数,代码如下:</p> <p>function GetOneImgUrl($img,$ftype=1){ if($img <> ''){ //var articleUrl = https://www.jb51.net $dtp = new DedeTagParse(); $dtp->LoadSource($img); if(is_array($dtp->CTags)){ foreach($dtp->CTags as $ctag){ if($ctag->GetName()=='img'){ $width = $ctag->GetAtt('width'); $height = $ctag->GetAtt('height'); $imgurl = trim($ctag->GetInnerText()); $img = ''; if($imgurl != ''){ if($ftype==1){ $img .= $imgurl; } else{ $img .= '@@##@@'; } } } } } $dtp->Clear(); return $img; } }
调用代码如下:
代码如下:
[field:tpic2 function='GetOneImgUrl(@me,1)'/]
这样即可.
以上就是dedeCMS怎么使用arclist标签调用自定义字段的详细内容,更多请关注php中文网其它相关文章!
DedeCMS标签likearticle调用全站相关文章支持排序
Dedecms一个SEO优化重要标签likearticle,根据标题、关键字调用本栏目下的相似文章。这意味着为某文章增加了许多带“长尾关键词”的文章,内容相关度增强,为网站增加PV。缺点是不能调用全站相似文章,不支持order by排序属性,做如下修改:
likearticle全站调用相似文章
打开/include/taglib/likearticle.lib.PHP,找到
$typeid = " And arc.typeid in($typeid) And arc.id<>$arcid "; |
修改为
$typeid = " And arc.id<>$arcid "; |
likearticle支持order by排序
继续找到
extract($ctag->CAttribute->Items,EXTR_SKIP); $revalue = "; |
下面添加
$orderby=$ctag->GetAtt('orderby'); |
找到
if( empty($arcid) || $byabs==0 ) { $orderquery = " order by arc.id desc "; } else { $orderquery = " order by ABS(arc.id – ".$arcid.") "; } |
修改为
$orderquery = "; if($orderby=='hot' || $orderby=='click') $orderquery = " order by arc.click $orderWay"; else if($orderby == 'sortrank' || $orderby=='pubdate') $orderquery = " order by arc.sortrank $orderWay"; else if($orderby == 'id') $orderquery = " order by arc.id $orderWay"; else if($orderby == 'near') $orderquery = " order by ABS(arc.id – ".$arcid.")"; else if($orderby == 'lastpost') $orderquery = " order by arc.lastpost $orderWay"; else if($orderby == 'scores') $orderquery = " order by arc.scores $orderWay"; else if($orderby == 'rand') $orderquery = " order by rand()"; else if($orderby == 'weight') $orderquery = " order by arc.weight asc";//如果没有特定设置排序则按照权重先排序 else $orderquery = " order by arc.sortrank $orderWay"; |
上一篇:DedeCMS附加表自定义字段关联主表文章
下一篇:DedeCMS实现百度搜索下拉菜单提示信息功能
DedeCMS标签likearticle调用全站相关新闻支持排序
DedeCMS一个网站优化优化重要标签likearticle,根据标题、关键词调用本栏目下的相似新闻。这意味着为某新闻增加了许多带“长尾Keywords”的新闻,内容相关度增强,为网站增加PV。缺点是不能调用全站相似新闻,不支持order by排序属性,做如下修改:
likearticle全站调用相似新闻打开/include/taglib/likearticle.lib.php,找到
$typeid = " And arc.typeid in($typeid) And arc.id<>$arcid ";修改为
$typeid = " And arc.id<>$arcid ";likearticle支持order by排序
继续找到
extract($ctag->CAttribute->Items, EXTR_SKIP); $revalue = ";下面添加
$orderby=$ctag->GetAtt('orderby');找到
if( empty($arcid) || $byabs==0 ) { $orderquery = " order by arc.id desc "; } else { $orderquery = " order by ABS(arc.id – ".$arcid.") "; }修改为
$orderquery = "; if($orderby=='hot' || $orderby=='click') $orderquery = " order by arc.click $orderWay"; else if($orderby == 'sortrank' || $orderby=='pubdate') $orderquery = " order by arc.sortrank $orderWay"; else if($orderby == 'id') $orderquery = " order by arc.id $orderWay"; else if($orderby == 'near') $orderquery = " order by ABS(arc.id – ".$arcid.")"; else if($orderby == 'lastpost') $orderquery = " order by arc.lastpost $orderWay"; else if($orderby == 'scores') $orderquery = " order by arc.scores $orderWay"; else if($orderby == 'rand') $orderquery = " order by rand()"; else if($orderby == 'weight') $orderquery = " order by arc.weight asc";//如果没有特定设置排序则按照权重先排序 else $orderquery = " order by arc.sortrank $orderWay";本文章网址:http://www.ppssdd.com/code/14871.html。转载请保留出处,谢谢合作!
关于dedecms织梦相关新闻标签likearticle调用自定义字段和织梦相关文章调用的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于dedecms列表dede:arclist调用自定义字段内容、dedeCMS怎么使用arclist标签调用自定义字段、DedeCMS标签likearticle调用全站相关文章支持排序、DedeCMS标签likearticle调用全站相关新闻支持排序等相关知识的信息别忘了在本站进行查找喔。
本文标签: