采用AJAX方式将文章移到回收站中
首页>>技术教程>>正文
本篇文章更新于 2022-02-08 15:55:10
本篇文章更新于 2022-02-08

在WordPress 后台文章列表中,可以单独将某篇文章移动到回收站中,但移动后页面会刷新一次,可通过下面的代码实现无刷新将文章移动到回收站中。

采用AJAX方式将文章移到回收站中

第一步,在当前主题目录新建一个movepost.js文件,将下面JS代码复制进去。

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">文章 <strong>' + postTitle + '</strong> 已移至回收站</td>').show();
		});
 
		$.ajax({
			method:'POST',
			url: ajaxurl,
			data: {
				'action' : 'moveposttotrash',
				'post_id' : postID,
				'_wpnonce' : nonce
			}
		});
 
	});
});

如果是在自定义文章类型中使用,修改其中的post-type-post为post-type-文章类型名称。

因代码中有中文,保存文件时需要将编码改为:UTF-8 无BOM(无签名)。

第二步,将下面代码添加到当前主题函数模板functions.php中:

add_action( 'admin_head', 'moveposttotrash_script' );
function moveposttotrash_script() {
	wp_enqueue_script( 'movepost', get_stylesheet_directory_uri() . '/movepost.js', array( 'jquery' ) );
 
}
 
add_action('wp_ajax_moveposttotrash', function() {
	check_ajax_referer( 'trash-post_' . $_POST['post_id'] );
	wp_trash_post( $_POST['post_id'] );
	die();
});

之后,在WordPress 后台文章列表中,点击“移动至回收站”,即可看到效果。

技术教程

通过 WordPress 主题启用某个插件

2022-1-31 22:41:00

技术教程

为 WordPress 添加自定义批量操作

2022-2-8 16:03:01

重要说明

本站资源大多来自网络,如有侵犯你的权益请联系管理员或给邮箱发送邮件zhouqiuqiu123@foxmail.com 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!


如果遇到评论下载的文章,评论后刷新页面点击对应的蓝字按钮即可跳转到下载页面本站资源少部分采用7z压缩,为防止有人压缩软件不支持7z格式,7z解压,建议下载7-zip(点击下载),zip、rar解压,建议下载WinRAR(点击下载)

敏而好学,不耻下问。——孔子