满分科技商务彩铃制作 發表於 2024-4-6 00:00:00

如何让织梦DedeCMS的TAG标签按栏目显示 只显示当前栏目标签

<p>
        织梦DedeCMS TAG标签按栏目显示(只显示当前栏目标签),用TAG标签的时候就遇到一些根据自己需要的方式来实现调用,今天我就为大家分享一下:如何让DEDE的TAG标签按栏目显示,只显示当前栏目的所有标签。</p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="如何让织梦DedeCMS的TAG标签按栏目显示 只显示当前栏目标签" alt="如何让织梦DedeCMS的TAG标签按栏目显示 只显示当前栏目标签" src="https://zhuji.jb51.net/uploads/img/202305/a0404b8bf2bbda96143d764dcdeca951.jpg"></p>
<p>
        一、打开include/taglib/目录下的 tag.lib.php 文件</p>
<p>
        找到下面这段代码,并在中间插入标注部分代码,(红色)</p>
<blockquote>
        <ol class="dp-c">
<li class="alt">
                        <span><span>(</span><span class="vars">$getall</span><span>==0 &amp;&amp; isset(</span><span class="vars">$refObj</span><span>-&gt;Fields[</span><span class="string">'tags'</span><span>]) &amp;&amp; !</span><span class="func">empty</span><span class="keyword">empty</span><span>(</span><span class="vars">$refObj</span><span>-&gt;Fields[</span><span class="string">'aid'</span><span>])) </span></span>
</li>
                <li>
                        <span>{ </span>
</li>
                <li class="alt">
                        <span><span class="vars">$dsql</span><span>-&gt;SetQuery(</span><span class="string">"Select tid From `ddmx_taglist` where aid = '{$refObj-&gt;Fields['aid']}' "</span><span>); </span></span>
</li>
                <li>
                        <span><span class="vars">$dsql</span><span>-&gt;Execute(); </span></span>
</li>
                <li class="alt">
                        <span><span class="vars">$ids</span><span> = </span><span class="string">''</span><span>; </span></span>
</li>
                <li>
                        <span><span class="keyword">while</span><span>(</span><span class="vars">$row</span><span> = </span><span class="vars">$dsql</span><span>-&gt;GetArray()) </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span><span class="vars">$ids</span><span> .= ( </span><span class="vars">$ids</span><span>==</span><span class="string">''</span><span> ? </span><span class="vars">$row</span><span>[</span><span class="string">'tid'</span><span>] : </span><span class="string">','</span><span>.</span><span class="vars">$row</span><span>[</span><span class="string">'tid'</span><span>] ); </span></span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>(</span><span class="vars">$ids</span><span> != </span><span class="string">''</span><span>) </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span><span class="vars">$addsql</span><span> = </span><span class="string">" where id in($ids) "</span><span>; </span></span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>(</span><span class="vars">$addsql</span><span>==</span><span class="string">''</span><span>) </span><span class="keyword">return</span><span> </span><span class="string">''</span><span>; </span></span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
                <li>
                        <span><span><span class="comment">//自定义添加标签</span><span> </span></span></span>
</li>
                <li class="alt">
                        <span><span><span class="keyword">else</span><span> </span><span class="keyword">if</span><span>(</span><span class="vars">$getall</span><span>==2) </span></span></span>
</li>
                <li>
                        <span><span>{ </span></span>
</li>
                <li class="alt">
                        <span><span><span class="vars">$addsql</span><span> = </span><span class="string">" where typeid='{$refObj-&gt;Fields['typeid']}' "</span><span>; </span></span></span>
</li>
                <li>
                        <span><span>} </span></span>
</li>
                <li class="alt">
                        <span><span><span class="comment">//自定义添加标签结束</span><span> </span></span></span>
</li>
                <li>
                        <span><span class="keyword">else</span><span> </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>(!</span><span class="func">empty</span><span class="keyword">empty</span><span>(</span><span class="vars">$typeid</span><span>)) </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span><span class="vars">$addsql</span><span> = </span><span class="string">" where typeid='$typeid' "</span><span>; </span></span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
        </ol>
</blockquote>
<p>
        二、修改你的模板</p>
<p>
        模板调用如下:</p>
<blockquote>
        <ol class="dp-xml">
<li class="alt">
                        <span><span>{</span><span class="attribute">dede:tagsort</span><span>='hot'</span><span class="attribute-value">getall</span><span>='2'} </span></span>
</li>
                <li>
                        <span> </span>
</li>
                <li class="alt">
                        <span><span class="tag">&lt;</span><span class="tag-name">a</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">''</span><span class="tag">&gt;</span><span></span><span class="tag">&lt;/</span><span class="tag-name">a</span><span class="tag">&gt;</span><span> </span></span>
</li>
                <li>
                        <span> </span>
</li>
                <li class="alt">
                        <span>{/dede:tag} </span>
</li>
        </ol>
</blockquote>
<p>
        这样就能更完美的根据自己的需要来定制要显示的内容了。</p>
頁: [1]
查看完整版本: 如何让织梦DedeCMS的TAG标签按栏目显示 只显示当前栏目标签