当前位置:首页>Wordpress教程>WordPress后台使用ajax删除文章

WordPress后台使用ajax删除文章

最终实现效果如下:

WordPress后台使用ajax删除文章

为什么要这样做?因为好玩,因为快速,无折腾不博客!

直接上代码,将下面的代码添加到当前启用的WordPress主题的functions.php里面。

// 后台 文章列表  ajax删除文章
add_action( 'admin_footer', 'dahuzi_custom_internal_javascript' );
function dahuzi_custom_internal_javascript(){

	echo "<script>
		jQuery(function($){
			$('body.post-type-post .row-actions .trash a').click(function( event ){
		 
				event.preventDefault();
		 
				var url = new URL( $(this).attr('href') ),
				    nonce = url.searchParams.get('_wpnonce'), // MUST for security checks
				    row = $(this).closest('tr'),
				    postID = url.searchParams.get('post'),
				    postTitle = row.find('.row-title').text();
		 
		 
				row.css('background-color','#ffafaf').fadeOut(300, function(){
					row.removeAttr('style').html('<td colspan=\'5\' style=\'background:#fff;border-left:1px solid #FF5722;border-left-width:4px;color:#555\'><strong>' + postTitle + '</strong> 已被移动到回收站</td>').show();
				});
		 
				$.ajax({
					method:'POST',
					url: ajaxurl,
					data: {
						'action' : 'moveposttotrash',
						'post_id' : postID,
						'_wpnonce' : nonce
					}
				});
		 
			});
		});
	</script>";

}

add_action('wp_ajax_moveposttotrash', function(){
	check_ajax_referer( 'trash-post_' . $_POST['post_id'] );
	wp_trash_post( $_POST['post_id'] );
	die();
});

如果你想将这个功能用于自定义文章分类,将代码中的 .post-type-post,替换成 .post-type-{post-type-name}

这里我使用的URL API在较旧的浏览器中不起作用,对我来说无所谓,因为我使用的是Chrome浏览器,所以可以。你可以在此处检查浏览器的兼容性。

代码不会刷新文章计数(全部,已发布,回收站...)

文章链接:https://www.7zt.cn/2226.html
文章标题:WordPress后台使用ajax删除文章
文章版权:柒主题 所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!
本文最后更新发布于2022年11月14日 20时33分38秒,某些文章具有时效性,若有错误或已失效,请在下方留言或联系:21660010@qq.com
声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 柒主题 或点击右侧 私信:站长 反馈,我们将尽快处理。

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索