投稿やページを編集または削除できないようにしてサイトで閲覧できるようにするにはどうすればよいですか?投稿をロックすることはできません。いくつかの記事を読みましたが、回答が見つかりません。
何か手助け?
'wp_insert_post_data'
フィルタを使用して、更新中のデータを現在投稿されているものに設定できます。
add_filter('wp_insert_post_data', 'prevent_post_edit', 99, 2);
prevent_post_edit ($data, $postarr) {
if ( ! isset($postarr['ID']) || empty($postarr['ID']) ) return $data;
if ( current_user_can('edit_files') ) return $data; // admin can edit posts
// prevent the update only for post and pages, change this according to tour needs
$prevent_types = array('post', 'page');
if ( ! in_array($data['post_type'], $prevent_types) ) return data;
// get the post how is before the update
$old = get_post($postarr[ID]);
return get_object_vars($old);
}
Role Scoper pluginを試してください。
任意のレベルのユーザーを昇格させて、選択したコンテンツを読んだり編集したりできます。 WPロールに関係なく、制限されたコンテンツは、コンテンツ固有のロールを欠いているユーザーから差し控えることができます。
編集: Members Plugin もあり、これは内容レベルの軽蔑を持っています。