DEDECMS直接获取软件模型本地下载地址或服务器名称
<p>当使用DEDECMS软件模型而且只有一个下载地址时,我们都喜欢用本地地址,在列表页时直接输出这个地址,方便访客下载。</p>
<p>
打开 /include/extend.func.php 在文件最下面添加个方法</p>
<blockquote>
<ol class="dp-c">
<li class="alt">
<span><span class="comment">/**</span> </span>
</li>
<li>
<span><span class="comment"> * 获取软件模型本地地址</span> </span>
</li>
<li class="alt">
<span><span class="comment"> *</span> </span>
</li>
<li>
<span><span class="comment"> * @access public</span> </span>
</li>
<li class="alt">
<span><span class="comment"> * @param string $aid 文章id</span> </span>
</li>
<li>
<span><span class="comment"> * @return string $type 本地地址/服务器名称</span> </span>
</li>
<li class="alt">
<span><span class="comment"> */</span><span> </span></span>
</li>
<li>
<span><span class="keyword">if</span><span> (!function_exists(</span><span class="string">'GetDownLink'</span><span>)) </span></span>
</li>
<li class="alt">
<span>{ </span>
</li>
<li>
<span> <span class="keyword">function</span><span> GetDownLink(</span><span class="vars">$aid</span><span>,</span><span class="vars">$type</span><span>=</span><span class="string">'link'</span><span>) </span></span>
</li>
<li class="alt">
<span> { </span>
</li>
<li>
<span> <span class="keyword">global</span><span> </span><span class="vars">$dsql</span><span>; </span></span>
</li>
<li class="alt">
<span> <span class="vars">$row</span><span>= </span><span class="vars">$dsql</span><span>->GetOne(</span><span class="string">"SELECT softlinks FROM `aspkus_addonsoft` WHERE aid = {$aid}"</span><span>); </span></span>
</li>
<li>
<span> <span class="keyword">if</span><span>(!</span><span class="func">is_array</span><span>(</span><span class="vars">$row</span><span>)) </span></span>
</li>
<li class="alt">
<span> { </span>
</li>
<li>
<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 class="keyword">else</span><span> </span></span>
</li>
<li class="alt">
<span> { </span>
</li>
<li>
<span> <span class="vars">$dtp</span><span> = </span><span class="keyword">new</span><span> DedeTagParse(); </span></span>
</li>
<li class="alt">
<span> <span class="vars">$dtp</span><span>->LoadSource(</span><span class="vars">$row</span><span>[</span><span class="string">'softlinks'</span><span>]); </span></span>
</li>
<li>
<span> <span class="keyword">foreach</span><span>(</span><span class="vars">$dtp</span><span>->CTags </span><span class="keyword">as</span><span> </span><span class="vars">$ctag</span><span>) </span></span>
</li>
<li class="alt">
<span> { </span>
</li>
<li>
<span> <span class="keyword">if</span><span>(</span><span class="vars">$ctag</span><span>->GetName()==</span><span class="string">'link'</span><span>) </span></span>
</li>
<li class="alt">
<span> { </span>
</li>
<li>
<span> <span class="vars">$link</span><span> = trim(</span><span class="vars">$ctag</span><span>->GetInnerText()); </span></span>
</li>
<li class="alt">
<span> <span class="vars">$name</span><span> = trim(</span><span class="vars">$ctag</span><span>->GetAtt(</span><span class="string">'text'</span><span>)); </span></span>
</li>
<li>
<span> } </span>
</li>
<li class="alt">
<span> } </span>
</li>
<li>
<span> } </span>
</li>
<li class="alt">
<span> <span class="keyword">return</span><span> ${</span><span class="vars">$type</span><span>}; </span></span>
</li>
<li>
<span> } </span>
</li>
<li class="alt">
<span>} </span>
</li>
</ol>
</blockquote>
<p>
<strong>前台模板中调用标签写法</strong></p>
<p>
<span>首页/列表页</span></p>
<p>
本地地址:</p>
<p>
服务器名称:</p>
<p>
<span>内容页</span></p>
<p>
本地地址:{dede:field.id function=GetDownLink(@me)/}</p>
<p>
服务器名称:{dede:field.id function=GetDownLink(@me,'name')/}</p>
頁:
[1]