编辑用户由wp_check_post_lock()
, 从而检查_edit_lock
postmeta字段:
function wp_check_post_lock( $post_id ) {
if ( ! $post = get_post( $post_id ) ) {
return false;
}
if ( ! $lock = get_post_meta( $post->ID, \'_edit_lock\', true ) ) {
return false;
}
$lock = explode( \':\', $lock );
$time = $lock[0];
$user = isset( $lock[1] ) ? $lock[1] : get_post_meta( $post->ID, \'_edit_last\', true );
if ( ! get_userdata( $user ) ) {
return false;
}
/** This filter is documented in wp-admin/includes/ajax-actions.php */
$time_window = apply_filters( \'wp_check_post_lock_window\', 150 );
if ( $time && $time > time() - $time_window && $user != get_current_user_id() ) {
return $user;
}
return false;
}
您可以在
get_post_metadata
并返回另一个用户id(该字段包含由时间戳和由冒号分隔的用户id组成的字符串,例如。
123456789:1
), 例如,用户名为“Anonymous”的自定义用户的用户id。
您可能需要采取一些措施,只在概述中覆盖它,这样您的用户在进入编辑模式时不会对“其他人正在编辑此帖子”警报感到惊讶(我不确定是否会发生,但可能发生),但除此之外,我认为不应该有任何令人讨厌的副作用。在部署之前,请确保对其进行彻底测试。