Щоб видалити спливаюче вікно редагування-блокування , ви можете спробувати:
add_filter( 'wp_check_post_lock_window', '__return_zero' );
Я не впевнений, чи це шлях, але я перевірив джерело, wp_check_post_lock()
і у нас є ці рядки:
...cut...
$time_window = apply_filters( 'wp_check_post_lock_window', 120 );
if ( $time && $time > time() - $time_window && $user != get_current_user_id() )
return $user;
return false;
...cut...
тому ідея полягає в $time_windowтому, щоб змінити ifумову false.
Оновлення:
Щоб застосувати це на edit.phpекрані, наприклад, за допомогою спеціального типу публікації beer:
function wpse_120179()
{
if( 'beer' === get_current_screen()->post_type )
add_filter( 'wp_check_post_lock_window', '__return_zero' );
}
add_action( 'load-edit.php', 'wpse_120179' );
І тоді ми можемо додати:
add_action( 'load-post.php', 'wpse_120179' );
також видалити його для post.phpекрана.
Більше копати ...
Функція _admin_notice_post_locked()буде визначена трохи нижче wp_set_post_lock()функції. Він містить ці рядки:
...cut...
if ( ! apply_filters( 'show_post_locked_dialog', true, $post, $user ) )
return;
...cut...
тому можна також спробувати show_post_locked_dialogфільтр:
add_filter( 'show_post_locked_dialog', 'wpse_120179_close_dialog', 99, 3 );
function wpse_120179_close_dialog( $show, $post, $user )
{
if( 'beer' === $post->post_type )
return FALSE;
return $show;
}
post_lock.