Typecho本身是不带友链功能的,基本上都靠着LINKs插件,下面说免插件实现链接功能
1、为主题设置添加链接内容输入框,在函数themeConfig()内合适位置添加以下内容
$Links = new Typecho_Widget_Helper_Form_Element_Textarea('Links', NULL, NULL, _t('链接列表(注意:切换主题会被清空,注意备份!)'), _t('按照格式输入链接信息,格式:<br><strong>链接名称(必须),链接地址(必须),链接描述,链接分类</strong><br>不同信息之间用英文逗号“,”分隔,例如:<br><strong>OFFODD,http://www.offodd.com/,JIElive的博客 | 有点不同,Myself</strong><br>若中间有暂时不想填的信息,请留空,例如暂时不想填写链接描述:<br><strong>OFFODD,http://www.offodd.com/,,Myself</strong><br>多个链接换行即可,一行一个'));
$form->addInput($Links);
2、在函数themeConfig()外,比如最底部,添加以下内容
function Links($sorts = NULL) {
$options = Typecho_Widget::widget('Widget_Options');
$link = NULL;
if ($options->Links) {
$list = explode("\r\n", $options->Links);
foreach ($list as $val) {
list($name, $url, $description, $sort) = explode(",", $val);
if ($sorts) {
$arr = explode(",", $sorts);
if ($sort && in_array($sort, $arr)) {
$link .= $url ? '<li><a href="'.$url.'" title="'.$description.'" target="_blank">'.$name.'</a></li>' : '<li><a title="'.$description.'"><del>'.$name.'</del></a></li>';
}
} else {
$link .= $url ? '<li><a href="'.$url.'" title="'.$description.'" target="_blank">'.$name.'</a></li>' : '<li><a title="'.$description.'"><del>'.$name.'</del></a></li>';
}
}
}
echo $link ? $link : '<li>暂无链接</li>';
}
后台新增链接方式
按照格式输入链接信息,链接输入格式:
链接名称,链接地址,链接描述,链接分类