typecho内置友链实现方法函数代码
1年前
非常的简单,只需要两步就可以轻松实现。css样式什么的需要自行进行解决。
第一步把下面的函数代码添加到相关文件中,例如:function.php
//内置友链,参数为内容,字符串形式。
function xm_yl($content){
if (strpos($content, '{link') !== false) {
$content = preg_replace_callback('/{link title="(.+?)"}(.+?){\/link}/', function ($match){
$nr = str_replace(['<br>', '<p>', '</p>'], '', $match[2]);
$content = '<div class="link_body"><div class="link_title">'.$match[1].'</div>'.$nr.'</div>';
return $content;
}, $content);
}
if (strpos($content, '{linka') !== false) {
$content = preg_replace('/{linka url="(.+?)"}(.+?){\/linka img="(.+?)"}/','<a href="\\1" target="_blank"><div class="link_body_list"><div class="link_body_img"><img src="\\3" alt="\\2"></div><div class="link_body_name">\\2</div></div></a>', $content);
}
return $content;
}
第二步在相关要实现友链的文件中添加以下代码。
<?php echo xm_yl($this->content);?>
第三步在内容中添加友链ubb代码即可
{link title="分类标题"}
{linka url="url地址"}名称{/linka img="图片"}
{/link}
typecho内置友链就这样搞定了,麻麻再也不用担心我使用很多插件了。