非常简单的问题:当wp正在更新或发布帖子时,我如何检查?因为我必须检查一个Posteta值,该值只有在帖子实际发布时才可能为真,因此它不必已经存在于系统中。E、 g.if(定义为“DOING\\u AUTOSAVE”)&&;DOING\\u AUTOSAVE)它是在wp执行自动保存时定义的。在进行更新时是否有类似的情况?非常感谢。
好吧,那么
add_action(\'save_post\', \'fields_news_save\');
function fields_news_save($post_id){
$errors = false;
if(get_check_key($_POST[\'checks_news\'])==0){
$errors = true;
update_option(\'custom_token\', $errors);
update_option(\'custom_admin_errors\', $txt_err=error_text($errors, 2));
remove_action(\'save_post\',\'fields_news_save\');
wp_update_post(array(\'ID\' => $post_id, \'post_status\' => \'draft\'));
add_action(\'save_post\', \'fields_news_save\');
return false;
}
}
“if”子句检查是否有meta post值设置为$\\u post[\'checks\\u news\'],这是执行查询的函数:
function get_check_key($checker){
global $wpdb;
$data = array();
$wpdb->query("
SELECT *
FROM $wpdb->wp_postmeta
WHERE
meta\\u值
= $checker;
");
return $wpdb->num_rows;
}
现在,我想做的是在开始时检查行数是否为0,wp是否正在进行发布而不是更新。