يمكنني استخدام wp_set_post_lock
لقفل منشور مؤقتًا حتى أتمكن فقط من تعديله.
يمكنني استخدام wp_refresh_post_lock
لتحديث هذا القفل.
يمكنني استخدام wp_check_post_lock
للتحقق مما إذا كان منشور مؤمن أم لا.
... ولكن كيف يمكنني إزالة قفل النشر؟ من المفترض أن تكون هناك وظيفة تدعى wp_remove_post_lock
أو wp_release_post_lock
، ولكن لا يبدو أن أيا من هذه الوظائف موجودة.
فكيف يمكنني إزالة قفل المشاركة؟ بالتأكيد لا يجب علي الانتظار حتى ينتهي الوقت ، أليس كذلك؟
للوهلة الأولى من المنطقي ، ولكن ...
متى بالضبط سوف تستخدم هذه الوظيفة؟ عندما يفتح المستخدم محرر النشر ، يمكنك ربط هذا الإجراء بسهولة وتعيين القفل.
لكن متى ستحذفها؟ بعد الادخار؟ لا - لا يزال المستخدم يقوم بالتحرير ، لذلك يجب أن يكون القفل قيد التشغيل.
يجب إزالته بعد أن يغلق المستخدم علامة التبويب أو يغلق المحرر - لكن لا يمكنك ربط هذه الإجراءات من PHP ، لأن هناك [PHP) لا يتم إخطارها قبل حدوثها مباشرةً ...
لذلك على الأرجح لا توجد وظيفة لإزالة القفل ، لأنه لا يوجد استخدام له في الاستخدام العادي ...
بالطبع لا يزال بإمكانك إزالة هذا القفل بسهولة ...
دعونا ننظر إلى ما هو هذا القفل بالضبط وكيف يعيّنه WP:
function wp_set_post_lock( $post_id ) {
if ( ! $post = get_post( $post_id ) ) {
return false;
}
if ( 0 == ( $user_id = get_current_user_id() ) ) {
return false;
}
$now = time();
$lock = "$now:$user_id";
update_post_meta( $post->ID, '_edit_lock', $lock );
return array( $now, $user_id );
}
حسنًا ، لذلك يتم تخزينه في صورة ملف مخصص يُسمى "_edit_lock" ، لذلك ... فقط قم بإزالة هذا التعريف وسوف تتم إزالة القفل.
delete_post_meta( $post_id, '_edit_lock')