cms秀模板网|织梦模板|静态模板|特效模板的dedecms模板下载平台logo

织梦dede:flink友情链接标签自定义输出bug修复

 2019-08-31
 来源:未知
摘要:织梦官方默认标签里用于获取友情链接是这样写的 {dede:flink row='24'/} ,如果我们想要自己按照自己的html代码来输出,我们可以用这样的标签 {dede:flink type='text' row='100'}a href="[field:url/]"

织梦官方默认标签里用于获取友情链接是这样写的 {dede:flink row='24'/} ,如果我们想要自己按照自己的html代码来输出,我们可以用这样的标签

{dede:flink type='text' row='100'}
<a href="[field:url/]" target="_blank" rel="nofollow">[field:webname/]</a>
{/dede:flink}

但是上面的自定义标签是输出不了正常友情链接的,这是官方标签类库的一个BUG

解决方法

打开 /include/taglib/flink.lib.php 找到 139-141 行

$rbtext = preg_replace("/\[field:url([\/\s]{0,})\]/isU", $row['url'], $innertext);
$rbtext = preg_replace("/\[field:webname([\/\s]{0,})\]/isU", $row['webname'], $rbtext);
$rbtext = preg_replace("/\[field:logo([\/\s]{0,})\]/isU", $row['logo'], $rbtext);

改成

$rbtext = preg_replace("/\[field:url([\/\s]{0,})\]/isU", $dbrow->url, $innertext);
$rbtext = preg_replace("/\[field:webname([\/\s]{0,})\]/isU", $dbrow->webname, $rbtext);
$rbtext = preg_replace("/\[field:logo([\/\s]{0,})\]/isU", $dbrow->logo, $rbtext);

如图

修复后,无论哪种方式都可以正常输出友情链接了。