纯代码实现WordPress增加百度快速收录推送
在主题目录下的options.php文件中加入如下配置项:
$options[] = array(
'name' => __('百度收录', 'haoui'),
'type' => 'heading' );
$options[] = array(
'name' => __('百度收录', 'haoui'),
'id' => 'bdtui_on',
'std' => false,
'desc' => ' 开启',
'type' => 'checkbox');
$options[] = array(
'name' => '快速收录-推送API',
'id' => 'bdtui_kuai_api',
'std' => '',
'desc' => '在百度搜索资源平台获得API;发布或更新文章前可选是否快速收录',
'type' => 'text');
$options[] = array(
'name' => '普通收录-推送API',
'id' => 'bdtui_api',
'std' => '',
'desc' => '在百度搜索资源平台获得API;发布或更新文章时默认推送到百度普通收录',
'type' => 'text');
加入后,在后台主题设置页面可以看到设置项
添加文章发布选项
在functions.php文件中加入如下代码,用以添加写文章时右侧百度推送选项。
function tb_post_to_baidu_tui() {
global $post;
$plink = get_permalink($post->ID);
if( $plink ){
if( _hui('bdtui_kuai_api') && isset($_POST['baidutui_kuai_on']) && $_POST['baidutui_kuai_on'] && !get_post_meta($post->ID, 'baidutui_kuai', true) ){
$ch = curl_init();
$options = array(
CURLOPT_URL => _hui('bdtui_kuai_api'),
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => $plink,
CURLOPT_HTTPHEADER => array('Content-Type: text/plain')
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
update_post_meta($post->ID, 'baidutui_kuai', $result);
}
if( _hui('bdtui_api') && !get_post_meta($post->ID, 'baidutui', true) ){
$ch = curl_init();
$options = array(
CURLOPT_URL => _hui('bdtui_api'),
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => $plink,
CURLOPT_HTTPHEADER => array('Content-Type: text/plain')
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
update_post_meta($post->ID, 'baidutui', $result);
}
}
}
if( _hui('bdtui_on') ) add_action( 'add_meta_boxes', 'tbcm_meta_boxs2' );
function tbcm_meta_boxs2() {
add_meta_box( 'tb_baidu_tui', '百度收录', 'tb_baidu_tui_init', 'post', 'side', 'low' );
}
function tb_baidu_tui_init() {
global $post;
$tui = get_post_meta($post->ID, 'baidutui', true);
$kuai = get_post_meta($post->ID, 'baidutui_kuai', true);
echo '<br>';
echo '<label><input type="checkbox" name="baidutui_kuai_on" id="">快速收录</label>';
echo '<br>';
echo '<br>';
if( $kuai ){
$kuaiObj = json_decode( $kuai );
echo '<p><strong>快速收录:'.(isset($kuaiObj->success_daily)&&$kuaiObj->success_daily>0?'<span style="color:#46B450">推送成功</span>':'<span style="color:#FF5E52">推送失败</span>').'</strong></p>';
echo '<p>推送结果:<code style="word-break:break-all">'.($kuai?$kuai:'').'</code></p>';
echo '<br>';
}
if( $tui ){
$tuiObj = json_decode( $tui );
echo '<p><strong>普通收录:'.(isset($tuiObj->success)&&$tuiObj->success>0?'<span style="color:#46B450">推送成功</span>':'<span style="color:#FF5E52">推送失败</span>').'</strong></p>';
echo '<p>推送结果:<code style="word-break:break-all">'.($tui?$tui:'').'</code></p>';
}else{
echo '<p><strong>普通收录:</strong>将在发布或更新文章时推送</p>';
}
echo '<input type="hidden" name="tb_baidu_tui_noncename" id="tb_baidu_tui_noncename" value="'.wp_create_nonce( plugin_basename(__FILE__) ).'" />';
}
添加上面代码后,在我们第一步添加的百度推送配置项中,勾选启用。然后点击新建文章,可以看到右侧多了一个名为百度收录的选项。
功能添加完成,只需要填入你的百度推送接口即可,百度推送接口在百度搜索资源平台可以看到。
可能这个代码作者写得比较匆忙,并没有处理推送后的返回数据,直接将返回的json数据给输出来了。所以小白们还需要仔细查看百度搜索资源平台提供的推送返回字段的含义,不过这并不影响我们使用
【文章转载自代码狗】
声明:
1、本站所有文章仅供参考,如有侵权 请联系我们删除 meng#yimiaonet.com #换成@
2、文章大部分源自网络或ai生成,文章不作为任何依据,仅供参考。
3、本站的所有源码都是在网络上转载或由用户投稿,仅供参考学习使用,请您务必在下载后24小时内删除。
4、本站下载的所有源码等内容不得用于任何违反相关法律法规的用途,一经发现 我们立即向有关部门报备。
5、如果您需要商用,可以联系客服定制开发或购买商业源码栏目内的内容,当然也可以联系部分源码的原作者;我们最终一切版权。
6、您注册本站会员后,如果需要注销账号等适宜,请联系客服。
评论(0)