对于网站来说,百度的收录非常重要,如果每天都去百度搜索平台去看收录的话有点麻烦,如果能在自己的网站上看到是否收录的按钮就很方便了,百度了很久,终于找到了实现这个的代码,这极大地方便了站长本人对网站内容是否收录的管理,也给自己的网站手赚线报网添加了这一功能,以下是我站点添加此功能的记录,希望能帮助到同样需要此功能的朋友们。
由于目前我所使用的是WordPress下的DUX 主题,一切修改以dux主题为准,WordPress的修改大同小异,其他程序的修改大家见机行事,因为我也是个代码小白
这次修改的文件主要有两个functions.php与single.php,大家可以在修改之前备份一下文件,以防止因操作不当引起的种种问题。
functions.php文件修改
首先我们需要将一下代码添加到你主题的functions.php文件中,部分主题可能禁止编辑这个文件,不过主题作者应该会提供另一个文件方便大家对主题的修改,比如functions_z.php,具体文件可咨询主题作者。
/**
* WordPress 添加百度是否收录功能
* hongsehuoxian.com
**/
function baidu_check($url,$post_id){
$baidu_record = get_post_meta($post_id,'baidu_record',true);
if( $baidu_record != 1){
$url='http://www.baidu.com/s?wd='.$url;
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$rs=curl_exec($curl);
curl_close($curl);
if(!strpos($rs,'抱歉未找到该URL,您可直接访问') && !strpos($rs,'很抱歉,没有找到与') ){
update_post_meta($post_id, 'baidu_record', 1) || add_post_meta($post_id, 'baidu_record', 1, true);
return 1;
} else {
return 0;
}
} else {
return 1;
}
}
function baidu_record() {
global $wpdb;
$post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
if(baidu_check(get_permalink($post_id), $post_id ) == 1) {
echo '<a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'">百度已收录</a>';
} else {
echo '<a style="color:red;" rel="external nofollow" title="点击提交,谢谢您!" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'">百度未收录</a>';
}
}
single.php文件修改
single.php文件是主题的文章页面,一般我们将这个功能添加到这里可以方便访客实时查看到此篇文章是否被百度收录,你可以将下面的短代码添加至你希望放置的位置。
<?php baidu_record(); ?>{
目前对于我使用的DUX主题,我是将这段代码添加到了如下位置,大家可做参考。详细的介绍就是这样了,有兴趣的可以自行加入自己的网站了。
<span class="item"><?php echo _get_post_comments() ?></span>{
<span class="item"><?php baidu_record(); ?></span>{
<span class="item"><?php edit_post_link('[编辑]'); ?></span>{
还没有评论,来说两句吧...