WordPress添加友情链接自助申请页面
为你的WordPress博客添加友情链接自助申请页面
因为用的 Mnews-Pro 主题并没有友情链接自助申请页面,为了博客更加好看(懒),所以着手弄一个自助提交的页面。
一、编写模板代码
李跳跳跳过广告进阶指南(存档记录,侵删)
李跳跳跳过广告进阶指南,新手可以跳过…
在你wp博客主题的目录下新建一个名为applylinks.php的文件,添加如下代码:
<?php
/*
Template Name: 自助申请友链
* 提示:友情链接,需在后台审核
*/
?>
<?php get_header();
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_jianjie = isset( $_POST['blink_jianjie'] ) ? trim(htmlspecialchars($_POST['blink_jianjie'], ENT_QUOTES)) : '';
$link_image = isset( $_POST['blink_image'] ) ? trim(htmlspecialchars($_POST['blink_image'], ENT_QUOTES)) : '';
$link_description = '图片链接:'.$_POST['blink_image']."\n".'简介:'.$_POST['blink_jianjie'];
$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)) {
wp_die('请输入正确的站点链接');
}
if( empty($link_jianjie)){
wp_die('请输入站点简介');
}
if ( empty($link_image) || strlen($link_image) > 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)) {
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('亲,友情链接提交成功,【等待站长审核中】!<p><a href="/">回到首页</a>', '提交成功');
}?>
<meta name=viewport content=width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no>
<div id="main">
<div class="container">
<div class="card-header bg-transparent">
<h3 class="mb-0" style="text-align: center;">申请友情链接</h3>
</div>
<div class="srcdict-yqlj">
<div class="col-lg-6 col-12">
<?php
if (have_posts()) {
while (have_posts()) {
the_post();
?>
<article class="col-md-10 mt20 col-md-offset-2 view clearfix">
<?php
if (function_exists('cmp_breadcrumbs')) {
cmp_breadcrumbs();
}?>
<p class="mt20">欢迎同类站点与本站交换友情链接,要求有权重有排名,收录良好的,内容健康,内容相关更佳。</p>
<p class="mt20"><strong>一、友链自助申请须知</strong></p>
<!--根据自身修改--><p>✔ 申请前请先加上本站链接;</p>
<!--根据自身修改--><p>✔ 本站所有友链排列顺序为 “ 随机 ” ;</p>
<!--根据自身修改--><p>✔ 稳定更新,每月至少发布1篇文章,最好是建站半年以上;</p>
<!--根据自身修改--><p>✔ 禁止一切产品营销、广告联盟类型的网站,优先通过同类原创、内容相近的网站;</p>
<!--根据自身修改--><p>✔ 本站会不定期检查和取消长期无法打开、不健康内容、长期不更新、私自取消本站链接等的网站;</p>
<p class="mt20"><strong>二、本站链接信息</strong></p>
<!--根据自身修改--><p>名称:小龙博客</p>
<!--根据自身修改--><p>网址:https://iox7.com/</p>
<!--根据自身修改--><p>简介:分享纯净好资源</p>
<!--根据自身修改--><p>图标:https://sdwz.icu/xmb1E</p>
<!--根据自身修改-->
</article>
</div>
<?php
}
} else {
}?>
<div class="col-lg-6 col-11">
<!--表单开始-->
<form method="post" class="mt20" action="
<?php
echo $_SERVER["REQUEST_URI"];
?>">
<div class="form-group">
<label for="blink_name"><font color="red">*</font> 名称:</label>
<input type="text" size="40" value="" class="form-control" id="blink_name" name="blink_name" />
</div>
<div class="form-group">
<label for="blink_url"><font color="red">*</font> 链接:</label>
<input type="text" size="40" value="" class="form-control" id="blink_url" name="blink_url" />
</div>
<div class="form-group">
<label for="blink_jianjie"><font color="red">*</font> 简介:</label>
<input type="text" size="40" value="" class="form-control" id="blink_jianjie" name="blink_jianjie" />
</div>
<div class="form-group">
<label for="blink_image"><font color="red">*</font> 头像:</label>
<input type="text" size="40" value="" class="form-control" id="blink_image" name="blink_image" />
</div>
<div><input type="hidden" value="send" name="blink_form" />
<button type="submit" class="btn btn-primary">提交申请</button>
<button type="reset" class="btn btn-default">重新填写</button>
(提示:带有<font color="red">*</font>,表示必填项~)
</div>
</form><!--表单结束-->
</div>
</div>
</div>
</div>
<?php
get_footer();
二、添加美化样式
/*自助申请友情链接*/
@media screen and (max-width: 750px) {
.container .row .card {
width: 100%
}
}
h3.mb-0 {
font-size: 24px;
line-height: 26px;
}
.container .row .pricing-deco .deco-layer {
-webkit-transition: -webkit-transform 0.5s;
transition: transform 0.5s;
}
.container .row .pricing-deco:hover .deco-layer--1 {
-webkit-transform: translate3d(15px,0,0);
transform: translate3d(15px,0,0);
}
.container .row .pricing-deco:hover .deco-layer--2 {
-webkit-transform: translate3d(-15px,0,0);
transform: translate3d(-15px,0,0);
}
.srcdict-yqlj {
max-width: 60rem;
width: 100%;
font-size: 14px;
padding: 15px;
background: #fff;
border: 1px solid rgba(0, 0, 0, 0.05);
border-radius: 6px;
box-shadow: 0 4px 12px 0 rgba(52, 73, 94, 0.3);
margin: auto;
}
.col-lg-6.col-11 {
margin: auto;
}
.col-lg-6.col-12 {
margin: auto;
}
button.btn{
margin: 10px 0 0 10px;
}
button.btn.btn-primary {
background-color: #009eff;
color: #fff;
padding: 10px;
border-radius: 5px;
margin-left: 10px;
}
button.btn.btn-default {
background-color: #009eff;
color: #fff;
padding: 10px;
border-radius: 5px;
margin-left: 10px;
}
.clearfix {
color: #fff;
background-color: #fc7c5f;
margin-top: 1rem;
padding: 1rem 1.5rem;
border: 1px solid transparent;
border-radius: .375rem;
max-width: 100%;
}
.mt20 {
margin-top: 20px;
margin-bottom: 15px;
}
.card-header {
padding: 1.25rem 1.5rem;
font-size: 1.0625rem;
background-color: #fff;
}
.card-header:first-child {
border-radius: calc(.375rem - 1px) calc(.375rem - 1px) 0 0;
}
.form-group {
margin-bottom: 15px;
}
input {
width: 100%;
}
三、添加待审核链接按钮
找到 wp-admin 目录下的 link-manager.php ,在103行后面添加如下代码(Tips: 如果找不到就搜索 link-add.php ,找到这行后面添加):
<a href="/wp-admin/link-manager.php?s=待审核&action=-1&cat_id=0&action2=-1" class="page-title-action" style="color:red;margin-left:5px;">查看待审核链接</a>
四、如果未开启后台链接的功能需要自己开启
//开启WordPress链接功能
add_filter( 'pre_option_link_manager_enabled', '__return_true' );
五、后台创建页面
登入WP后台,创建一个空白页面,模板选择:自助申请友链
六、演示效果
演示效果见本站友链申请页面:
https://iox7.com/apply_links