在调用get_option( \'wypiekacz_allow_skip_rules\' )
.
当你过滤pre_option_wypiekacz_allow_skip_rules
并返回与FALSE
, 它应该尽早停止检查未测试
add_filter(
\'pre_option_wypiekacz_allow_skip_rules\',
\'wpse_100503_wypiekacz_for_drafts_only\'
);
function wpse_100503_wypiekacz_for_drafts_only( $bool )
{
if ( \'draft\' === get_post_status( $GLOBALS[\'post\'] ) )
return $bool;
return 0;
}
为了防止post状态重置,类似的操作可能会起作用:
add_filter(
\'wypiekacz_check_post\',
\'wpse_100503_wypiekacz_prevent_draft_reset\',
10,
4
);
function wpse_100503_wypiekacz_prevent_draft_reset( $errors, $text, $title, $post_data )
{
if ( empty ( $errors ) )
return $errors;
if ( \'pending\' === $post_data->post_status )
remove_filter( \'query\', array( $GLOBALS[\'wp_wypiekacz\'], \'kill_sql_query\' ) );
}
但是,老实说,插件代码是一团糟。