{dede:fieldtypeurl}设置栏目、文章为绝对地址后域名重复。求解决
以下代码仅供参考:
{dede:arclist flag=h typeid=2 row=1 titlelen=’200′ orderby=pubdate}
<div>
<dl>
<dt><a href=”[field:arcurl/]” target=”_blank”>[field:title/]</a></dt>
<dd><a href=”[field:arcurl/]” target=”_blank”>[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne(“Select body From `2d30_addonarticle` where aid=’$aid’ “); @me = cn_substr(strip_tags(“{$row['body']}”),960);[/field:id]…</a></dd>
</dl>
{/dede:arclist}
调用全文语句:
[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne(“Select body From `dede_addonarticle` where aid=’$aid’ “); @me = “{$row['body']}”;[/field:id]
你就不应该勾选,你勾选的是远程本地化是吧,那个就是把你的远程下载都本地,然后用本地的地址,不勾选就是你自己填写的远程地址了!
我回答过这样的问题,你进去看看就知道了!
http://zhidaobaiducom/question/744482273965043772htmloldq=1
出来三个框是因为你一共有三个栏目, {dede:channelartlist } {/dede:channelartlist} 标签对是调用所有栏目的。
出来的文章都是id1的文章是因为你调用文章列表时指明了id。{dede:arclist typeid='1' titlelen='60' row='8' }
其实你调用栏目1的文章列表光用这段代码就够了:
<ul>
{dede:arclist typeid='1' titlelen='60' row='8' }
<li><a href="[field:arcurl /]">[field:title /]</a></li>
{/dede:arclist}
</ul>
指定频道的话可以用
{dede:type typeid='1'}
<a href="[field:typelink /]">[field:typename /]</a>
{/dede:type}
同你的方法, 只要在include/extendfuncphp 加入一个自定义函数,然后再在列表页直接调用。
函数:
/
获取字符串的第一个地址
/
function getbodyfirstpic($str_img){
preg_match_all("/<img\>/isU",$str_img,$ereg);//正则表达式把的整个都获取出来了
$img=$ereg[0][0];//
$p="#src=('|\")()('|\")#isU";//正则表达式
preg_match_all ($p, $img, $img1);
$img_path =$img1[2][0];//获取第一张路径
//return $img_path; //仅返回地址
return $img; //返回整个
}
列表调用:
[field:body function="getbodyfirstpic(@me)" /]
0条评论