默认 WordPress 后台文章批量操作中,只有编辑和移动到回收站,可以按文本方法添加自定义批量操作选项,例如添加批量将文章改为草稿和自动为选中的文章添加自定义字段和值。将下面代码添加到当前主题函数模板 functions.php 中,最终效果:

第一步:在批量操作下拉列表中添加选项。
// 在批量操作下拉列表中添加选项
add_filter( \'bulk_actions-edit-post\', \'zm_my_bulk_actions\' );
function zm_my_bulk_actions( $bulk_array ) {
$bulk_array[\'zm_make_draft\'] = \'状态改为草稿\';
$bulk_array[\'zm_set_price\'] = \'添加自定义字段 \';
return $bulk_array;
}默认是为文章添加自定义批量操作,页面、评论、媒体等,可以将代码中的:bulk_actions-edit-post 改为:
为页面添加批量操作,请使用:bulk_actions-edit-page
自定义文章类型:bulk_actions-edit-{CPT NAME}
自定义分类法:bulk_actions-edit-{TAXONOMY NAME}
评论:bulk_actions-edit-comments
插件:bulk_actions-plugins
用户:bulk_actions-users
媒体:bulk_actions-upload第二步:添加处理动作
// 处理执行
add_filter( \'handle_bulk_actions-edit-post\', \'zm_bulk_action_handler\', 10, 3 );
function zm_bulk_action_handler( $redirect, $doaction, $object_ids ) {
$redirect = remove_query_arg( array( \'zm_make_draft_done\', \'zm_bulk_price_changed\' ), $redirect );
// 改为草稿
if ( $doaction == \'zm_make_draft\' ) {
foreach ( $object_ids as $post_id ) {
wp_update_post( array(
\'ID\' => $post_id,
\'post_status\' => \'draft\'// 草稿
) );
}
$redirect = add_query_arg( \'zm_make_draft_done\', count( $object_ids ), $redirect );
}
// 添加自定义字段
if ( $doaction == \'zm_set_price\' ) {
foreach ( $object_ids as $post_id ) {
update_post_meta( $post_id, \'product_price\', 1000 );// 自定义字段名称:product_price,值:1000
}
$redirect = add_query_arg( \'zm_bulk_price_changed\', count( $object_ids ), $redirect );
}
return $redirect;
}第三步:添加处理后的提示文字
// 添加提示文字
add_action( \'admin_notices\', \'zm_bulk_action_notices\' );
function zm_bulk_action_notices() {
// 改为草稿
if ( ! empty( $_REQUEST[\'zm_make_draft_done\'] ) ) {
echo \'<div id=\"message\" class=\"updated notice is-dismissible\">
<p>文章状态已更新。</p>
</div>\';
}
// 添加自定义字段
if( ! empty( $_REQUEST[\'zm_bulk_price_changed\'] ) ) {
printf( \'<div id=\"message\" class=\"updated notice is-dismissible\"><p>\' .
_n( \'有 %s 文章添加了价格自定义字段。\',
\'有 %s 文章添加了价格自定义字段。\',
intval( $_REQUEST[\'zm_bulk_price_changed\'] )
) . \'</p></div>\', intval( $_REQUEST[\'zm_bulk_price_changed\'] ) );
}
}上面代码只起个抛砖引玉的作用,具体怎么使用,发挥你的想像力吧。
本站除原创内容,其余内容均收集自互联网,仅限用于学习和研究目的,本站不对其内容的合法性、可用性承担任何责任。本站禁止以任何形式发布或转载任何违法相关信息,若您发现请立即向站长举报;用户投稿一切资源内容不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
如有版权内容,其版权均归原作者所有,本站虽力求保存原有版权信息,但因众多资源经多次转载,已无法确定其真实来源,故敬请原作者谅解!为尊重作者劳动成果,请购买正版支持作者,谢谢!若您对「HULIKU.COM」所载资源作品版权归属存有异议,请发送邮箱:ihuliku@qq.com 进行处理。
本站资源文件大多存储至云盘,如您发现图片或链接失效,请联系站长或作者,我们将及时进行更新。资源都是经过站长或作者收集测试优化后进行发布分享。如若转载请在贵站文内以超链形式注明狐狸库文章出处,谢谢合作!













![WordPress子比主题美化教程合集[2023/04/17]-狐狸库](https://huliku.com/pic/2023032607024935.png)
![狐狸库自定义子比主题底部footer页脚美化(自适应)[06.26]更新-狐狸库](https://huliku.com/pic/2023062610013835.png)





















请登录后查看评论内容