Home  >  Article  >  CMS Tutorial  >  How does dedeCMS use arclist tags to call custom fields?

How does dedeCMS use arclist tags to call custom fields?

藏色散人
藏色散人Original
2019-12-14 10:39:081782browse

How does dedeCMS use arclist tags to call custom fields?

How does dedeCMS use arclist tags to call custom fields?

The example in this article describes how dedeCMS uses the arclist tag to call custom fields. Share it with everyone for your reference. The specific analysis is as follows:

Recommended learning: 梦Weavercms

In fact, the method is very simple. We only need to use addfields to add custom sections, but there is one thing. It should be noted that if you add it later, we need to select the bottom layer, otherwise the field may not be called.

The syntax code is as follows:

The code is as follows:

{dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'} 
[field:textlink /] [field:附加字段1/] [field:附加字段2/]< [field:附加字段3/]<
{/dede:arclist}

The example code is as follows:

The code is as follows:

{dede:arclist flag=&#39;c&#39; typeid=&#39;23&#39; channelid=&#39;1&#39; addfields=&#39;tpic2&#39; limit=&#39;0,8&#39;} 
<div class="works"> 
<a title="[field:title /]" href="#"> 
<img src="[field:tpic2 function=&#39;GetOneImgUrl(@me,1)&#39;/] " width="940" height="440" alt="#"> 
</a> 
</div> 
{/dede:arclist}

Requirements:

1. Specify the channelid attribute

2. Specify the fields addfields to be obtained ='Field 1, Field'

3. Must be selected to make the field available in the underlying template of the list (custom fields can only be displayed in the document template by default. Enabling this option will slow down list queries, such as Please do not select if it is not necessary). This can be used for ordinary text types. If it is a picture type, it will appear. The code is as follows:

The code is as follows:

{dede:img text=&#39;&#39; width=&#39;270&#39; height=&#39;129&#39;} /uploads/101017/1-10101H21F54P.gif {/dede:img} 
这明显不是我们想要的,这个时候我们弄一个自定函数,代码如下:</p> <p>function GetOneImgUrl($img,$ftype=1){ 
if($img <> &#39;&#39;){ //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()==&#39;img&#39;){ 
$width = $ctag->GetAtt(&#39;width&#39;); 
$height = $ctag->GetAtt(&#39;height&#39;); 
$imgurl = trim($ctag->GetInnerText()); 
$img = &#39;&#39;; 
if($imgurl != &#39;&#39;){ 
if($ftype==1){ 
$img .= $imgurl; 
} 
else{ 
$img .= &#39;<img src="&#39;.$imgurl.&#39;" width="&#39;.$width.&#39;" height="&#39;.$height.&#39;" />&#39;; 
} 
} 
} 
} 
} 
$dtp->Clear(); 
return $img; 
} 
}

The calling code is as follows:

The code is as follows:

[field:tpic2 function=&#39;GetOneImgUrl(@me,1)&#39;/]

That’s it.

The above is the detailed content of How does dedeCMS use arclist tags to call custom fields?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn