高光應 發表於 2023-6-5 00:00:00

织梦DEDECMS获取当前页面的顶级栏目名称及链接教程

<p>
        <img style="max-width:100%!important;height:auto!important;"title="织梦DEDECMS获取当前页面的顶级栏目名称及链接教程" alt="织梦DEDECMS获取当前页面的顶级栏目名称及链接教程" src="https://zhuji.jb51.net/uploads/img/202305/519b1d5ff88ca3691be2b04b2ccb83dd.jpg"></p>
<p>
        织梦获取当前页面的顶级栏目名称及链接方法:在织梦文件目录中打开 \include\extend.func.php 在最下面添加</p>
<blockquote>
        <ol class="dp-c">
<li class="alt">
                        <span><span>*  获取顶级栏目相关信息 </span></span>
</li>
                <li>
                        <span> * </span>
</li>
                <li class="alt">
                        <span> * @access    <span class="keyword">public</span><span> </span></span>
</li>
                <li>
                        <span> * @param     string  $tid  栏目id </span>
</li>
                <li class="alt">
                        <span> * @param     string  $field栏目字段 </span>
</li>
                <li>
                        <span> * @<span class="keyword">return</span><span>    string </span></span>
</li>
                <li class="alt">
                        <span> */ </span>
</li>
                <li>
                        <span><span class="keyword">if</span><span> ( ! function_exists(</span><span class="string">'getToptype'</span><span>)) </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span><span class="keyword">function</span><span> getToptype($tid,$field) </span></span>
</li>
                <li class="alt">
                        <span>{ </span>
</li>
                <li>
                        <span>global $dsql,$cfg_Cs; </span>
</li>
                <li class="alt">
                        <span><span class="keyword">if</span><span>(!is_array($cfg_Cs)) </span></span>
</li>
                <li>
                        <span>{ </span>
</li>
                <li class="alt">
                        <span>require_once(DEDEDATA.<span class="string">"/cache/inc_catalog_base.inc"</span><span>); </span></span>
</li>
                <li>
                        <span>} </span>
</li>
                <li class="alt">
                        <span><span class="keyword">if</span><span>(!isset($cfg_Cs[$tid]) || $cfg_Cs[$tid]==0) </span></span>
</li>
                <li>
                        <span>{ </span>
</li>
                <li class="alt">
                        <span>$topid = $tid; </span>
</li>
                <li>
                        <span>} </span>
</li>
                <li class="alt">
                        <span><span class="keyword">else</span><span> </span></span>
</li>
                <li>
                        <span>{ </span>
</li>
                <li class="alt">
                        <span>$topid = GetTopid($cfg_Cs[$tid]); </span>
</li>
                <li>
                        <span>} </span>
</li>
                <li class="alt">
                        <span>$row = $dsql-&gt;GetOne(<span class="string">"SELECT * FROM `dede_arctype` WHERE id=$topid"</span><span>); </span></span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'id'</span><span>) </span><span class="keyword">return</span><span> $topid; </span></span>
</li>
                <li class="alt">
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'typename'</span><span>) </span><span class="keyword">return</span><span> $row[</span><span class="string">'typename'</span><span>];</span><span class="comment">//栏目名称</span><span> </span></span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'typeurl'</span><span>) </span><span class="keyword">return</span><span> GetOneTypeUrlA($row);</span><span class="comment">//栏目链接</span><span> </span></span>
</li>
                <li class="alt">
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'typenamedir'</span><span>) </span><span class="keyword">return</span><span> $row[</span><span class="string">'typenamedir'</span><span>];</span><span class="comment">//栏目英文名称</span><span> </span></span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'seotitle'</span><span>) </span><span class="keyword">return</span><span> $row[</span><span class="string">'seotitle'</span><span>];</span><span class="comment">//栏目SEO标题</span><span> </span></span>
</li>
                <li class="alt">
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'description'</span><span>) </span><span class="keyword">return</span><span> $row[</span><span class="string">'description'</span><span>];</span><span class="comment">//栏目描述</span><span> </span></span>
</li>
                <li>
                        <span><span class="keyword">if</span><span>($field==</span><span class="string">'content'</span><span>) </span><span class="keyword">return</span><span> $row[</span><span class="string">'content'</span><span>];</span><span class="comment">//栏目内容</span><span> </span></span>
</li>
                <li class="alt">
                        <span>} </span>
</li>
                <li>
                        <span>} </span>
</li>
        </ol>
</blockquote>
<p>
        在织梦模板中调用以下代码:</p>
<blockquote>
        <ol class="dp-c">
<li class="alt">
                        <span><span>&lt;h3&gt;&lt;a href=</span><span class="string">"{dede:field.typeid function=getToptype(@me,typeurl)/}"</span><span>&gt;{dede:field.typeid </span><span class="keyword">function</span><span>=getToptype(@me,typename)/}&lt;/a&gt;&lt;/h3&gt; </span></span>
</li>
        </ol>
</blockquote>
<p>
        {dede:field.typeid function=getToptype(@me,typeurl)/}获取顶级栏目链接</p>
<p>
        {dede:field.typeid function=getToptype(@me,typename)/}是获取顶级栏目名称。</p>
頁: [1]
查看完整版本: 织梦DEDECMS获取当前页面的顶级栏目名称及链接教程