2023-06-11 / 3211阅
在WordPress中,可以限制用户对文章或页面的编辑权限。这可以很有用,特别是如果您想允许用户仅在某些条件下编辑文章或页面。下面是一些关于在WordPress中禁用编辑的方法。
方法1:使用用户角色
在WordPress中,您可以分配不同的用户角色和权限。因此,您可以创建一个新的用户角色,并限制它们的编辑权限。例如,您可以创建一个“作者”用户角色,并禁止他们编辑其他用户的文章。
以下是一个示例代码,它限制了“作者”用户角色对其他用户的文章的编辑权限:
function restrict_editing_others_posts( $caps, $cap, $user_id, $args ) { $current_user = wp_get_current_user(); if ( ! $current_user->has_cap( 'administrator' ) && $cap == 'edit_others_posts' ) { $caps[] = 'do_not_allow'; } return $caps; } add_filter( 'user_has_cap', 'restrict_editing_others_posts', 10, 4 );
方法2:使用插件
您也可以使用插件来实现禁用编辑功能。例如,“User Role Editor”插件允许您轻松地创建新的用户角色并分配不同的权限。
方法3:使用自定义代码
如果您想将编辑权限限制为特定条件,例如文章的发布日期或状态,您可以使用自定义代码来实现。例如,以下代码将禁止用户编辑发布时间超过一周的文章:
function restrict_editing_old_posts( $allcaps, $cap, $args ) { $post_id = $args[0]; $post = get_post( $post_id ); if ( $cap === 'edit_post' && strtotime( $post->post_date ) < strtotime( '-1 week' ) ) { $allcaps['edit_post'] = false; } return $allcaps; } add_filter( 'user_has_cap', 'restrict_editing_old_posts', 10, 3 );
不管您使用哪种方法来禁用编辑功能,都要确保测试代码以确保它能够正常工作并符合您的期望。
阅读文章或者观看视频过程中有任何问题,请下方留言或者联系我Q248758228