Loading
0

WordPress网站如何禁止作者为文章设置标签?

WordPress网站允许用户角色为作者或贡献者的用户在后台投递文章,但是他们可能对于文章标签的设置不够专业,所以不希望由他们自己设置文章标签。那么WordPress网站如何禁止作者为文章设置标签?

WordPress网站如何禁止作者为文章设置标签?
解决此问题的最简单方法之一是让管理员和编辑这两个角色以下的用户角色无法设置文章标签。所用到的代码如下:

/**

* WordPress 禁止作者为文章设置标签

*/

function wpdaxue_disallow_tags_for_author( $taxonomy ) {

global $wp_taxonomies;

if ('post_tag' === $taxonomy) {

$wp_taxonomies[$taxonomy]->cap->assign_terms = 'edit_others_posts';

}

}

add_action('registered_taxonomy', 'wpdaxue_disallow_tags_for_author');

将上面的代码添加到主题的 functions.php 文件,或者你的其他功能插件中。

Loading
0

WordPress如何禁止多人同时登录一个账号?

对于会员制的网站,尽可能避免多人同时登录一个会员账号应该是比较需要的,那么WordPress如何禁止多人同时登录一个账号?今天再推荐一个类似插件 Loggedin,和之前两个不太一样的是,它支持设置最大活跃登录数,也就是一个账号允许多少个客户端同时登录,还可以通过钩子排除掉一些用和用户角色。已测试兼容 WordPress 5.0+ ,Loggedin 使用很简单,直接在后台插件安装界面搜索 Loggedin 即可在线安装,或者到官方下载 https://wordpress.org/plugins/loggedin/,启用插件后,在 设置 – 常规 界面,就可以看到设置选项:

WordPress如何禁止多人同时登录一个账号?
一旦有多个人(客户端)登录同一个账号,超过了设定的活跃登录数,就会出现如下提示:

WordPress如何禁止多人同时登录一个账号?
已经该插件汉化,点击下载简体中文包,解压后将里面的文件上传到 wp-content/languages/plugins 目录即可生效,同时避免插件升级时丢失语言。下面分享下官方提供的排除用户和用户角色的代码示例,按照需求修改好代码,然后添加到主题的 functions.php 文件即可。

排除用户

//排除某些用户,不受最大活跃登录数限制

function f_loggedin_bypass_users( $bypass, $user_id ) {

// 在 array( ) 中输入用户id,多个id用英文逗号隔开

$allowed_users = array( 1, 2, 3, 4, 5 );

return in_array( $user_id, $allowed_users );

}

add_filter( 'loggedin_bypass', 'f_loggedin_bypass_users', 10, 2 );

排除角色

//排除某些用户角色,不受最大活跃登录数限制

function f_loggedin_bypass_roles( $prevent, $user_id ) {

// 在 array( ) 中输入用角色名,多个用户角色使用英文逗号隔开

$allowed_roles = array( 'administrator', 'editor' );

$user = get_user_by( 'id', $user_id );

$roles = ! empty( $user->roles ) ? $user->roles : array();

return ! empty( array_intersect( $roles, $allowed_roles ) );

}

add_filter( 'loggedin_bypass', 'f_loggedin_bypass_roles', 10, 2 );

发表评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???

返回顶部"