WordPress纯代码为主题添加自助申请友链功能

一般博客申请友链都会设置一个专门页面,想要申请友链的站长在页面下方进行留言告知,同意后再手动进行添加,这样一来可能出现添加友链网址输入错误等问题。

为此,通过自助申请友链功能我们只需要在后台通过审核即可展示,WordPress如何实现这一功能请看下面教程:

为WordPress开启链接功能

将下方代码添加至主题functions.php文件中:

//开启WordPress链接功能
add_filter( 'pre_option_link_manager_enabled', '__return_true' ); 

新建页面

在WordPress主题根目录下手动创建一个“links.php”页面,将下方代码放入其中:

<?php
/*
Template Name: 自助申请友链
* 提示:友情链接,需在后台审核
*/
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('连接名称必须填写,且长度不得超过20字');
}
 
if ( empty($link_url) || strlen($link_url) > 60 ) { //验证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 = $wpdb->get_results($sql_link);
 
wp_die('亲,友情链接提交成功,【等待站长审核中】!<a href="http://blog.17u7.com/">点此返回</a>', '提交成功');
 
}
?>



<!doctype html>
<html lang="zh">
<head>
    <?php get_header(); ?>
</head>
<body>
<?php
file_load_css('login-plane.css');
?>
<div id="app" class="login-background">
    <header>
        <div class="header-main-plane">
            <div class="header-main container">
                <?php
                get_template_part('component/nav-header');
                ?>
            </div>
        </div>
    </header>
    <div class="header-zhanwei" style="min-height: 80px;width: 100%;"></div>

    <style>
        <?php
if ($set['user']['lgoinpageimg'] != null) {
    echo '#app{background-image:url('.$set['user']['lgoinpageimg'].');}';
}
?>
    </style>
    <main class="container">
        <div id="login-plane">
           
           
      <div style="min-height: 510px;">     
<div id="main" style="min-height: 450px;background-color:#ffffff;border-radius: 5px;">
    <div style="padding: 10px 20px 20px 20px;">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<article class="col-md-10 col-md-offset-2 view clearfix">
<?php if(function_exists('cmp_breadcrumbs')) cmp_breadcrumbs();?>
 <h1>自助友链申请</h1>
<p class="mt20">欢迎同类站点与本站交换友情链接,要求有权重有排名,收录良好的,内容健康,内容相关更佳。</p>
 
<p class="mt20"><strong>友链自助申请须知</strong></p>
 
<p>&#x2714; 申请前请先加上本站链接;</p>
 
<p>&#x2714; 网站域名必须是一级域名,非一级域名的网站暂不考虑;</p>
 
<p>&#x2714; 稳定更新,每月至少发布1篇文章,最好是建站半年以上;</p>
 
<p>&#x2714; 禁止一切产品营销、广告联盟类型的网站,优先通过同类原创、内容相近的网站;</p>
 
<p>&#x2714; 网站内容一定要健康积极向上,凡内容污秽不堪的、反动反共的、宣扬暴力的、广告挂马的都将不会通过申请。</p>
 
<p class="mt20"><strong>其他</strong></p>
 
<p>博主会不定期访问友链,如果遇到网站长时间打不开、网站被降权,内容不符合条件等情况的话,将会撤销该友链!</p>
<p>如果申请后,长时间未通过审核,有可能是博主太忙未看到,可以通过留言告知我,谢谢~</p>
 
<p class="mt20"><strong>本站链接信息</strong></p>
 
<p>名称:游趣博客</p>
 
<p>网址:http://blog.17u7.com//</p>
 
<!--表单开始-->
<form method="post" class="mt20" action="<?php echo $_SERVER["REQUEST_URI"]; ?>">
 
<div class="form-group">
<label for="blink_name">链接名称:</label>
<input type="text" size="40" value="" class="form-control" id="blink_name" placeholder="请输入链接名称(必填)" name="blink_name" />
</div>
 
<div class="form-group">
<label for="blink_url">链接地址:</label>
<input type="text" size="40" value="" class="form-control" id="blink_url" placeholder="请输入链接地址(必填)" name="blink_url" />
</div>
 
<div class="form-group">
<label for="blink_lianxi">网站介绍:</label>
<input type="text" size="40" value="" class="form-control" id="blink_lianxi" placeholder="请输入网站介绍" name="blink_lianxi" />
</div>
 
<div>
<input type="hidden" value="send" name="blink_form" /><br />
<button type="submit" class="btn-primary" style="
	width: 100px; /* 宽度 */
	height: 30px; /* 高度 */
	border-width: 0px; /* 边框宽度 */
	border-radius: 3px; /* 边框半径 */
	background: #1E90FF; /* 背景颜色 */
	cursor: pointer; /* 鼠标移入按钮范围时出现手势 */
	outline: none; /* 不显示轮廓线 */
	font-family: Microsoft YaHei; /* 设置字体 */
	color: white; /* 字体颜色 */
	font-size: 17px; /* 字体大小 */
">提交申请</button>
<button type="reset" class="btn-default" style="
	width: 100px; /* 宽度 */
	height: 30px; /* 高度 */
	border-width: 0px; /* 边框宽度 */
	border-radius: 3px; /* 边框半径 */
	background: #1E90FF; /* 背景颜色 */
	cursor: pointer; /* 鼠标移入按钮范围时出现手势 */
	outline: none; /* 不显示轮廓线 */
	font-family: Microsoft YaHei; /* 设置字体 */
	color: white; /* 字体颜色 */
	font-size: 17px; /* 字体大小 */
">重填</button>
(提示:带有(必填),表示必填项~)
</div>
</form>
<!--表单结束-->
 
</article>
<?php endwhile; else: ?>
<?php endif; ?>
</div>
</div>
</div>
           
           
        </div>
    </main>
   
    <footer>
        <?php
        wp_footer();
        get_footer(); ?>
    </footer>
</div>
</body>
</html>

根据自己使用主题可能需要做些微调。

后台选择模板

添加完成页面后,在WordPress后台新建一个页面,选用刚刚的模板:自助申请友链,发布页面即可看到效果!

使用方法

后台定制,添加一键筛选待审核链接按钮

找到wp-admin目录下的link-manager.php,在86行【Tips: 我的是wp 5.6.1版本,如果找不到就搜索“link-add.php”,找到这行】后面添加如下代码:

<a href="/wp-admin/link-manager.php?s=待审核&&action=-1&cat_id=0&action2=-1" style="color:red;margin-left:5px;">查看待审核链接</a>

然后保存后,查看后台-链接管理页。在前端填写申请后,站长在WordPress后台——链接菜单中看到待审核链接。如果想让申请的链接通过审核并展示,打开该链接编辑页面,取消“将这个链接设为私密链接”选项框即可!

阅读剩余
THE END