请讲 發表於 2024-3-3 00:00:00

dedeCMS使用arclist标签调用自定义字段的方法

<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        本文实例讲述了dedeCMS使用arclist标签调用自定义字段的方法。分享给大家供大家参考。具体分析如下:</p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        其实方法非常的简单我们只要使用addfields就可以实现增加自定自段了,不过有一点需要注意的是如果你在在后面加的我们需要把底层给选中,否则是可能调用不到字段的.</p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        <strong>语法代码如下:</strong><br>
         </p>
<div class="msgheader" style='margin: 3px auto 0px; padding: 0px 3px; outline: none; line-height: 21.6px; clear: both; border-width: 1px; border-style: solid; border-color: rgb(0, 153, 204); background: rgb(246, 251, 255); overflow: hidden; font-family: tahoma, arial, "Microsoft YaHei";'>
        <div class="right">
                <span><u>复制代码</u></span>
</div>
        代码如下:</div>
<div class="msgborder" id="phpcode4" style='margin: 0px auto 3px; padding: 0px 3px; outline: none; line-height: 25.2px; font-size: 14px; clear: both; border-right: 1px solid rgb(0, 153, 204); background: rgb(221, 237, 251); overflow: hidden; border-left: 1px solid rgb(0, 153, 204); word-break: break-all; border-bottom: 1px solid rgb(0, 153, 204); word-wrap: break-word; font-family: tahoma, arial, "Microsoft YaHei";'>
        {dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'} <br>
        &lt; &lt;<br><br>
        {/dede:arclist}</div>
<p>
        <br style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'><strong style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'>实例代码如下:</strong></p>
<blockquote>
        <ol class="dp-xml">
<li class="alt">
                        <span><span>{dede:arclist </span><span class="attribute">flag</span><span>=</span><span class="attribute-value">'c'</span><span> </span><span class="attribute">typeid</span><span>=</span><span class="attribute-value">'23'</span><span> </span><span class="attribute">channelid</span><span>=</span><span class="attribute-value">'1'</span><span> </span><span class="attribute">addfields</span><span>=</span><span class="attribute-value">'tpic2'</span><span> </span><span class="attribute">limit</span><span>=</span><span class="attribute-value">'0,8'</span><span>}  </span></span>
</li>
                <li>
                        <span><span class="tag">&lt;</span><span class="tag-name">div</span><span> </span><span class="attribute">class</span><span>=</span><span class="attribute-value">"works"</span><span class="tag">&gt;</span><span>  </span></span>
</li>
                <li class="alt">
                        <span><span class="tag">&lt;</span><span class="tag-name">a</span><span> </span><span class="attribute">title</span><span>=</span><span class="attribute-value">""</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">"#"</span><span class="tag">&gt;</span><span>  </span></span>
</li>
                <li>
                        <span><span class="tag">&lt;</span><span class="tag-name">img</span><span> </span><span class="attribute">src</span><span>=</span><span class="attribute-value">" "</span><span> </span><span class="attribute">width</span><span>=</span><span class="attribute-value">"940"</span><span> </span><span class="attribute">height</span><span>=</span><span class="attribute-value">"440"</span><span> </span><span class="attribute">alt</span><span>=</span><span class="attribute-value">"#"</span><span class="tag">&gt;</span><span>  </span></span>
</li>
                <li class="alt">
                        <span><span class="tag">&lt;/</span><span class="tag-name">a</span><span class="tag">&gt;</span><span>  </span></span>
</li>
                <li>
                        <span><span class="tag">&lt;/</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>  </span></span>
</li>
                <li class="alt">
                        <span>{/dede:arclist} </span>
</li>
        </ol>
</blockquote>
<p>
        <br><br style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'><strong style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'>要求:</strong></p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
         </p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        1、指定 channelid 属性</p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        2、指定要获得的字段 addfields='字段1,字段'</p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        3、必须选择  使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择),这个可以用来做普通的文字类型,如果要是<u>图片</u>的类型的话会出现.代码如下:</p>
<blockquote>
        <ol class="dp-xml">
<li class="alt">
                        <span><span>{dede:img </span><span class="attribute">text</span><span>=</span><span class="attribute-value">''</span><span> </span><span class="attribute">width</span><span>=</span><span class="attribute-value">'270'</span><span> </span><span class="attribute">height</span><span>=</span><span class="attribute-value">'129'</span><span>} /uploads/101017/1-10101H21F54P.gif {/dede:img}  </span></span>
</li>
                <li>
                        <span>这明显不是我们想要的,这个时候我们弄一个自定函数,代码如下:<span class="tag">&lt;/</span><span class="tag-name">p</span><span class="tag">&gt;</span><span> </span><span class="tag">&lt;</span><span class="tag-name">p</span><span class="tag">&gt;</span><span>function GetOneImgUrl($img,$</span><span class="attribute">ftype</span><span>=</span><span class="attribute-value">1</span><span>){  </span></span>
</li>
                <li class="alt">
                        <span>if($img <span class="tag">&lt;</span><span class="tag">&gt;</span><span> ''){ //var </span><span class="attribute">articleUrl</span><span> = </span><span class="attribute-value">https</span><span>://www.jb51.net  </span></span>
</li>
                <li>
                        <span>$<span class="attribute">dtp</span><span> = </span><span class="attribute-value">new</span><span> DedeTagParse();  </span></span>
</li>
                <li class="alt">
                        <span>$dtp-<span class="tag">&gt;</span><span>LoadSource($img);  </span></span>
</li>
                <li>
                        <span>if(is_array($dtp-<span class="tag">&gt;</span><span>CTags)){  </span></span>
</li>
                <li class="alt">
                        <span>foreach($dtp-<span class="tag">&gt;</span><span>CTags as $ctag){  </span></span>
</li>
                <li>
                        <span>if($ctag-<span class="tag">&gt;</span><span>GetName()=='img'){  </span></span>
</li>
                <li class="alt">
                        <span>$<span class="attribute">width</span><span> = $ctag-</span><span class="tag">&gt;</span><span>GetAtt('width');  </span></span>
</li>
                <li>
                        <span>$<span class="attribute">height</span><span> = $ctag-</span><span class="tag">&gt;</span><span>GetAtt('height');  </span></span>
</li>
                <li class="alt">
                        <span>$<span class="attribute">imgurl</span><span> = </span><span class="attribute-value">trim</span><span>($ctag-</span><span class="tag">&gt;</span><span>GetInnerText());  </span></span>
</li>
                <li>
                        <span>$<span class="attribute">img</span><span> = </span><span class="attribute-value">''</span><span>;  </span></span>
</li>
                <li class="alt">
                        <span>if($imgurl != ''){  </span>
</li>
                <li>
                        <span>if($<span class="attribute">ftype</span><span>==1){  </span></span>
</li>
                <li class="alt">
                        <span>$img <span class="attribute">.</span><span>= $imgurl;  </span></span>
</li>
                <li>
                        <span>}  </span>
</li>
                <li class="alt">
                        <span>else{  </span>
</li>
                <li>
                        <span>$img <span class="attribute">.</span><span>= </span><span class="attribute-value">'&lt;img src="'</span><span>.$imgurl.'" </span><span class="attribute">width</span><span>=</span><span class="attribute-value">"'.$width.'"</span><span> </span><span class="attribute">height</span><span>=</span><span class="attribute-value">"'.$height.'"</span><span> </span><span class="tag">/&gt;</span><span>';  </span></span>
</li>
                <li class="alt">
                        <span>}  </span>
</li>
                <li>
                        <span>}  </span>
</li>
                <li class="alt">
                        <span>}  </span>
</li>
                <li>
                        <span>}  </span>
</li>
                <li class="alt">
                        <span>}  </span>
</li>
                <li>
                        <span>$dtp-<span class="tag">&gt;</span><span>Clear();  </span></span>
</li>
                <li class="alt">
                        <span>return $img;  </span>
</li>
                <li>
                        <span>}  </span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
        </ol>
</blockquote>
<strong style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'>调用代码如下</strong><span style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'>:</span><br style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'><div class="msgheader" style='margin: 3px auto 0px; padding: 0px 3px; outline: none; line-height: 21.6px; clear: both; border-width: 1px; border-style: solid; border-color: rgb(0, 153, 204); background: rgb(246, 251, 255); overflow: hidden; font-family: tahoma, arial, "Microsoft YaHei";'>
        <div class="right">
                <span><u>复制代码</u></span>
</div>
        代码如下:</div>
<div class="msgborder" id="phpcode7" style='margin: 0px auto 3px; padding: 0px 3px; outline: none; line-height: 25.2px; font-size: 14px; clear: both; border-right: 1px solid rgb(0, 153, 204); background: rgb(221, 237, 251); overflow: hidden; border-left: 1px solid rgb(0, 153, 204); word-break: break-all; border-bottom: 1px solid rgb(0, 153, 204); word-wrap: break-word; font-family: tahoma, arial, "Microsoft YaHei";'>
        </div>
<span style='font-family: tahoma, arial, "Microsoft YaHei"; font-size: 14px;'>这样即可.</span>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
         </p>
<p style='margin: 0px; padding: 5px 0px; outline: none; font-size: 14px; line-height: 30px; font-family: tahoma, arial, "Microsoft YaHei";'>
        希望本文所述对大家的dedecms建站有所帮助。</p>
頁: [1]
查看完整版本: dedeCMS使用arclist标签调用自定义字段的方法