xhtml+css模板中,友情链接标签生成的修改

softyun3年前cms教程131

dede的友情链接标签设定行了列后,生成的是<table><tr><td>代码来控制行数和列数

如果模板使用xhtml+css编写,想用<li>来表示链接结构就很方便。

=================================================================

修改方法:
首先打开include/inc_arcpart_view.php 文件

找到: 720-764行

//获取友情链接列表
//------------------------
function GetFriendLink($type="",$row="",$col="",$titlelen="",$tablestyle="",$linktype=1,$innertext=''){
$type = AttDef($type,"textall");
$row = AttDef($row,4);
$col = AttDef($col,6);
if($linktype=="") $linktype = 1;
$titlelen = AttDef($titlelen,24);
$tablestyle = AttDef($tablestyle," width='100%' border='0' cellspacing='1' cellpadding='1' ");
$tdwidth = round(100/$col)."%";
$totalrow = $row*$col;

if($innertext=='') $innertext = " [field:link/] ";

$wsql = " where ischeck >= '$linktype' ";
if($type=="image") $wsql .= " And logo<>'' ";
else if($type=="text") $wsql .= " And logo='' ";
else $wsql .= "";

$equery = "Select * from dede_flink $wsql order by sortrank asc limit 0,$totalrow";

$this->dsql->SetQuery($equery);
$this->dsql->Execute();

$revalue = "";
while($row = $this->dsql->GetArray())
{
if($type=="text"||$type=="textall")
$row['link'] = "<a href='".$row['url']."' target='_blank'>"_substr($row['webname'],$titlelen)."</a>";
else if($type=="image")
$row['link'] = "<a href='".$row['url']."' target='_blank'><img alt='".str_replace("'","`",$row['webname'])."' src='".$row['logo']."' border='0'></a>";
else{
if($row['logo']=="")
$row['link'] = " <a href='".$row['url']."' target='_blank'>"_substr($row['webname'],$titlelen)."</a>";
else
$row['link'] = " <a href='".$row['url']."' target='_blank'><img alt='".str_replace("'","`",$row['webname'])."' src='".$row['logo']."' border='0'></a>";
}
$rbtext = preg_replace("/\[field:url([\s]{0,})\/\]/isU",$row['url'],$innertext);
$rbtext = preg_replace("/\[field:webname([\s]{0,})\/\]/isU",$row['ID'],$rbtext);
$rbtext = preg_replace("/\[field:logo([\s]{0,})\/\]/isU",$row['logo'],$rbtext);
$rbtext = preg_replace("/\[field:link([\s]{0,})\/\]/isU",$row['link'],$rbtext);
$revalue .= $rbtext;
}
return $revalue;
}

修改为:

//获取友情链接列表
//------------------------
function GetFriendLink($type="",$row="",$col="",$titlelen="",$tablestyle="",$linktype=1,$innertext=''){
$type = AttDef($type,"textall");
$row = AttDef($row,4);
$col = AttDef($col,6);
if($linktype=="") $linktype = 1;
$titlelen = AttDef($titlelen,24);
$tablestyle = AttDef($tablestyle," width='100%' border='0' cellspacing='1' cellpadding='1' ");
$tdwidth = round(100/$col)."%";
$totalrow = $row*$col;

if($innertext=='') $innertext = " [field:link/] ";

$wsql = " where ischeck >= '$linktype' ";
if($type=="image") $wsql .= " And logo<>'' ";
else if($type=="text") $wsql .= " And logo='' ";
else $wsql .= "";

$equery = "Select * from dede_flink $wsql order by sortrank asc limit 0,$totalrow";

$this->dsql->SetQuery($equery);
$this->dsql->Execute();

$revalue = "";
while($row = $this->dsql->GetArray())
{
if($type=="text"||$type=="textall")
$row['link'] = "<li><a href='".$row['url']."' target='_blank'>"_substr($row['webname'],$titlelen)."</a></li>";
else if($type=="image")
$row['link'] = "<li><a href='".$row['url']."' target='_blank'><img alt='".str_replace("'","`",$row['webname'])."' src='".$row['logo']."' border='0'></a></li>";
else{
if($row['logo']=="")
$row['link'] = " <li><a href='".$row['url']."' target='_blank'>"_substr($row['webname'],$titlelen)."</a></li>";
else
$row['link'] = " <li><a href='".$row['url']."' target='_blank'><img alt='".str_replace("'","`",$row['webname'])."' src='".$row['logo']."' border='0'></a></li>";
}
$rbtext = preg_replace("/\[field:url([\s]{0,})\/\]/isU",$row['url'],$innertext);
$rbtext = preg_replace("/\[field:webname([\s]{0,})\/\]/isU",$row['ID'],$rbtext);
$rbtext = preg_replace("/\[field:logo([\s]{0,})\/\]/isU",$row['logo'],$rbtext);
$rbtext = preg_replace("/\[field:link([\s]{0,})\/\]/isU",$row['link'],$rbtext);
$revalue .= $rbtext;
}
return $revalue;
}

模板中的调用标签:

<div class="flink"><ul>
{dede:flink type='textall' titlelen='24' }{/dede:flink}
</ul>
<div>

调用后生成效果:
<div class="flink"><ul>
<li><a href='dedecms' target='_blank'>DEDECMS</a></li>
<li><a href='mb5u' target='_blank'>模板无忧</a></li>
</ul>
<div>

相关属性请自行定义。

官方原帖:52250&3

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

DedeCMS实现树型菜单的方法

给大家分享一下织梦DedeCMS实现树型菜单的方法,经证实可用,希望能帮助到你treeview是JQUERY树形菜单显示的插件,支持COOKIE。今天终于把这个插件成功移植到CMS上了。支持DEDEC...

DedeCMS教程:在列表页输出当前页码相关信息

本方法原理上适用于DedeV5.3及以上所有的版本,不分编码。 这个问题来源于刚才有一位朋友的需求,他希望在列表页可以自由的调用当前栏目的一些与页码相关的信息。这个需求如果用自带的织梦标签,是无法实...

dede网站内容页如何调取栏目页标题和seo标题

dede网站内容页如何调取栏目页标题和seo标题 内容页调用SEO标题:在之间加入以下代码: {dede:field name='typeid' runphp='yes'}  $id=@me;  gl...

dedecms编码转换方法 gbk转UTF-8,UTF-8转GBK

经常遇到编码转换的问题,有的是购买了模板但是模板编码与程序编码不符,导致出现乱码. 今天这篇教程,我来教大家如何转换模板文件的编码和程序的编码. 1.如何转换模板文件编码? 首先下载一个编码转换软件 ...

把DEDE,RSS的描述改成全文内容输出

修改方法如下:1.找rss的模板 templets/plus/rss.htm把<description>[field:description/]</description>改成...

dede不使用js调用非DEDE数据 如论坛等其他cms数据

对于织梦dedecms主站和论坛分隔2地的,大家一般首页调用论坛都是JS来搞是吧,下面推荐一个好方法实现html调用,对搜索引擎友好。 论坛以PW举例:一般实现方法:<script src="h...