HardBirch

WP申请友情链接的模板页面制作

时间:12-08-30 栏目:WP技巧分享 作者:魔豆先生 评论:0 点击: 2,524 次

平时看到很多网站都有自助申请友情链接的功能,很羡慕,不仅可以减少交换链接的麻烦,还可以增加与读者之间的沟通。魔豆之路博客是wordpress的也想开通此功能,在网上找的代码,给大家分享一下。此代码不仅有提供用户申请友情链接的作用,还带有favicon.ico 显示的友情链接自定义页面。
大家按照步骤来:

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

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

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
 * Template Name: Friendly-Link
 * 网站名称:魔豆之路 - 神秘前路,待拨迷雾
 * 网站地址:http://www.mythroad.net
 * 提示:友情链接,需在后台审核
 */
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'=>$link_target,'link_description'=>$link_description,'link_visible'=>$link_visible));
    $result = mysql_query($sql_link);
    // 通过数组形式将链接插入数据库
 wp_die('亲,友情链接提交成功,【等待站长审核中。。。】!您可以返回首页~', '提交成功');
}

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!--表单开始-->
   <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 , '" rel="external nofollow" title="' , $bookmark->link_description , '" target="_blank" >' , $bookmark->link_name , '</a></li>';
   }
   }
   ?>
   </ul>
   </div>
   <!--输出友情链接结束-->

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

 

1
2
3
4
5
6
7
/*友情链接页面*/
.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;}

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

声明: 本文由( 魔豆先生 )原创编译,转载请保留链接: WP申请友情链接的模板页面制作

WP申请友情链接的模板页面制作:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐