WP教程与插件

WordPress博客自定义申请友情链接和个性化页面

平时看到很多网站都有自助申请友情链接的功能,很羡慕,不仅可以减少交换链接的麻烦,还可以增加与读者之间的沟通。此代码不仅有提供用户申请友情链接的作用,还带有favicon.ico 显示的友情链接自定义页面。

其实代码也很简单,大家按照步骤来:

第一步:创建link.php文件

1、在你wp博客主题的目录下新建一个名为link.php的文件,然后将主题中自带的page.php文件中的所有代码复制到link.php中;

第二步:添加友情申请需在后台审核

2、在link.php文件的开始处,即的get_header(); 前面加上以下代码:

/**
* Template Name: 友链link
* 作者:BluFate
* 博客:http://www.lovesnow.com.cn/
* 提示:友情链接,需在后台审核
*/

if( isset($_POST['blink_form">) && $_POST['blink_form"> == 'send')
{
global $wpdb;

// 表单变量初始化
$link_name = isset( $_POST['blink_name"> ) ? trim(htmlspecialchars($_POST['blink_name">, ENT_QUOTES)) : '';
$link_url = isset( $_POST['blink_url"> ) ? trim(htmlspecialchars($_POST['blink_url">, ENT_QUOTES)) : '';
$link_description = isset( $_POST['blink_lianxi"> ) ? trim(htmlspecialchars($_POST['blink_lianxi">, ENT_QUOTES)) : '';//联系方式
$link_target = "_blank";
$link_visible = "N";//表示链接默认不可见

// 表单项数据验证
if ( empty($link_name) || mb_strlen($link_name) > 20 )
{
wp_die('连接名称必须填写,且长度不得超过30字');
}

if ( empty($link_url) || strlen($link_url) > 60 || !preg_match("/^(https?:\/\/)?(((www\.)?[a-zA-Z0-9_-">+(\.[a-zA-Z0-9_-">+)?\.([a-zA-Z">+))|(([0-1">?[0-9">?[0-9">|2[0-5">[0-5">)\.([0-1">?[0-9">?[0-9">|2[0-5">[0-5">)\.([0-1">?[0-9">?[0-9">|2[0-5">[0-5">)\.([0-1">?[0-9">?[0-9">|2[0-5">[0-5">))(\:\d{0,4})?)(\/[\w- .\/?%&=">*)?$/i", $link_url))
//验证url
{
wp_die('链接地址必须填写');
}

$sql_link = $wpdb->insert($wpdb->links, array('link_name' =>$link_name.'---【待审核】','link_url'=>$link_url,'link_target'=& gt;$link_target,'link_description'=>$link_description,'link_visible'=>$link_visible));

$result = mysql_query($sql_link);
// 通过数组形式将链接插入数据库
wp_die('亲,友情链接提交成功,【等待站长审核中。。。】!您可以返回首页~', '提交成功');
}

第三步:正文内容添加输出

在<?php the_content(); ?> 下面添加以下代码,此代码包含友情链接提交表单和友情链接输出两部分:

<!--表单开始-->
<form method="post" action="<?php echo $_SERVER["REQUEST_URI">; ?>">
<div style="text-align: left; padding-top: 10px;">
<label>链接名称:*</label>
</div>
<div>
<input type="text" size="40" value="" name="blink_name" />
</div>

<div style="text-align: left; padding-top: 10px;">
<label>链接地址:*</label>
</div>
<div>
<input type="text" size="40" value="" name="blink_url" />
</div>

<div style="text-align: left; padding-top: 10px;">
<label>联系QQ:</label>
</div>
<div>
<input type="text" size="40" value="" name="blink_lianxi" />
</div>
<?php if (get_option('swt_adc') == 'Hide') { ?>
<?php { echo ''; } ?>
<?php } else { include(TEMPLATEPATH . '/includes/ad_c.php'); } ?>
<div></div>
<br clear="all">
<div style="text-align: center; color:#FF0000;">
<input type="hidden" value="send" name="blink_form" />
<input type="submit" value="提交" />
<input type="reset" value="重填" />
</div>
</form><!--表单结束-->
<!--输出友情链接开始-->
<div>
<h3>友情链接</h3>
<ul>
<?php
$default_ico = get_template_directory_uri().'/images/links_default.gif';//默认 ico 图片位置
$bookmarks = get_bookmarks('title_li=&orderby=rand'); //全部链接随机输出
//如果你要输出某个链接分类的链接,更改一下get_bookmarks参数即可
//如要输出链接分类ID为5的链接 title_li=&categorize=0&category=5&orderby=rand
if ( !empty($bookmarks) ) {
foreach ($bookmarks as $bookmark) {
echo '<li><img src="', $bookmark->link_url , '/favicon.ico" onerror="javascript:this.src=\'' , $default_ico , '\'" /><a href="' , $bookmark->link_url , '" title="' , $bookmark->link_description , '" target="_blank" >' , $bookmark->link_name , '</a></li>';
}
}
?>
</ul>
</div>
<!--输出友情链接结束-->

第四步:添加友情链接样式

为了好看点,你可以给友情链接输出的page-links 这个class定义一下样式,下面是BlueFate博客主题所用样式,可以参考一下,将此代码加入到你的style.css样式文件最后即可:

/*友情链接页面*/
.page-links{overflow:hidden;margin:0 0 24px;padding:0;}
.page-links h3{border-bottom:1px solid #bfbebe;text-align:left;margin:20px 0 0 0; font-size:18px;}
.page-links ul{margin:0;padding:5px 0 0 0;}
.page-links ul li{float:left;width:150px;line-height:16px;height:16px;margin:5px 5px 0;padding:0;list-style-type:none;}
.page-links ul li:hover{background:#f2f2f2;}
.page-links ul li img{width:16px;height:16px;margin:0 5px -2px 0;padding:0;border:none;}

第五步:启用友情链接调用模板

最后进入WordPress管理后台– 页面 – 添加新页面,标题为自助友情链接(可以自己起名),内容填上链接说明等,右侧选择模板,选择“友链blink”即可

(0)
关键词:,
【友情提示:】
1、[焦点热议]及其子栏目内容为网络转载,其它栏目内容系作者个人原创文章观点,不代表除作者外的任何第三方观点赞同或支持;
2、「♚付涛纪实阁♚」原创文章均为本人工作、学习过程中重点事项点的记录,便于日后面对相同问题时候的复盘总结,同时原创内容遵循创作共用版权 CC 4.0 BY-SA 协议,转载请附上原文出处链接及声明,否则默认视为侵权。
3、如本站个人观点有涉及不妥的地方,可联系【QQ:860227477】,提供合理合法依据,可无偿给予修改或删除。
4、同时针对站内所有来自于【精品软件共享】及其子栏目所分享的软件均为网络收集,请用户下载后24小时内删除,否则引起的争议由使用者承担,与本站无关;
5、针对本站内容若有异义,亦可直接与【法律顾问:易兴俊,律师联系电话:13825799821】直接联系沟通;
LensNews

发表评论