WordPress定时自动删除过期友情链接

上面是搬码源码网 abnma.com 经由过程收集网络收拾整顿的代码片断。搬码源码网小编此刻分享给各人,也给各人做个参考。

跟着各人网站流量权重的晋升,信赖许多站长都在寻觅属于本身的盈利模式。实在很年夜一部门小我私家网站是无奈完成盈利的,好比说本站代码狗博客,只能做到出入均衡。为了保障办事器的正常运行,许多站长就会用到发售友情链接的体式格局来换取必然的利润,一般来说一个权 1 的网站想要包管不亏钱照旧很简朴的。跟着友情链接越来越多,咱们可能会健忘哪个友链该逾期了,是以,为了办事于懒人,我联合 wordpress 函数写下的这个哄骗按时使命与 wp_delete_link 函数主动删除逾期友情链接的要领。

wp_delete_link 函数

民间形容是:从数据库中删除指定 id 的链接。

返归值一直为真。

希奇的是,我测试了下这个函数,WordPress 提醒说找不到这个函数,末了我是经由过程 wp_delete_link 函数的组织内容来完成的,也就是说,参考民间完成措施本身写了个 wp_delete_link 函数。

组织的 wp_delete_link 函数如下:

function wp_delete_link( $link_id ) {

global $wpdb;

do_action( 'delete_link',$link_id );

wp_delete_object_term_relationships( $link_id,'link_category' );

$wpdb->delete( $wpdb->links,array( 'link_id' => $link_id ) );

do_action( 'deleted_link',$link_id );

clean_bookmark_cache( $link_id );

return true;

}

建议咱们本身写的时辰不要应用 wp_delete_link 这个不异的名字,否则可能会堕落。很较着,这个函数有两个钩子举措,一个是在删除之前触发,一个是在删除之后触发,咱们应用的时辰就不需求这两个举措了,删除它。然后在后台新建一个链接,记得填上逾期时间。

日期格局不限定,我提供的代码只撑持这种格局,要改动格局请改动上面的日期格局化字符串。然后经由过程如下代码查询一切链接来删除链接。

<?php

function cron_dellink(){

//获得一切链接分类,并遍历链接分类

$categories=get_categories(array( 'type' => 'link'));

foreach ( $categories as $categorie ) {

//按照分类id遍历链接概况

$bookmarks = get_bookmarks( array(

'orderby' => 'name',

'order' => 'ASC',

'category' => $categorie->term_id

));

foreach ( $bookmarks as $bookmark ) {

//判定下有没有逾期日期数据

if($bookmark->link_notes){

date_default_timezone_set('PRC');

if(strtotime($bookmark->link_notes)<time()){

//这里的内容可以零丁写成下面的函数

global $wpdb;

wp_delete_object_term_relationships( intval($bookmark->link_id),'link_category' );

$wpdb->delete( $wpdb->links,array( 'link_id' => intval($bookmark->link_id) ) );

clean_bookmark_cache( intval($bookmark->link_id) );

}

}

}

}

}

?>

我将逾期日期填在备注里,应用 link_notes 可以获取。不出不测,下面的代码可以删除时间跨越此刻的链接,上面添加按时使命。

//按时使命

add_filter( 'cron_schedules','salong_add_every_time' );

function salong_add_every_time( $schedules ) {

$schedules['every_time'] = array(

'interval' => 600,

'display' => __( '每隔10分钟','salong' )

);

return $schedules;

}

if ( ! wp_next_scheduled( 'salong_add_every_time' ) ) {

wp_schedule_event( time(),'every_time','salong_add_every_time' );

}

add_action( 'salong_add_every_time','cron_dellink' );

按时使命在后面也讲过,可以参考下 WordPress 应用 WP-Cron 按时使命删除从未登录的用户,后果还不错。别问我为什么过了 20 分钟都没有删除链接,那是由于这 20 分钟内都没人拜候你的网站,cron 按时使命是有人拜候才会触发的!

以上是搬码源码网(abnma.com)为你网络收拾整顿的全数代码内容,但愿文章可以或许帮你解决所碰到的步伐开提问题。假如感觉搬码源码网网站内容还不错,接待将搬码源码网网站保举给步伐员挚友。

总结

以上是搬码源码网为你网络收拾整顿的WordPress按时主动删除逾期友情链接全数内容,但愿文章可以或许帮你解决WordPress按时主动删除逾期友情链接所碰到的步伐开提问题。

假如感觉搬码源码网网站内容还不错,接待将搬码源码网网站保举给步伐员挚友。

0
分享到:
搬码资源网广告位

评论0

请先

没有账号? 忘记密码?