允许非管理员访问定制主题页面

时间:2015-02-15 作者:user1048676

我使用的主题有一个非常强大的自定义程序,我希望管理员以外的用户能够使用自定义程序,以便他们可以自定义他们的网站外观。自定义程序的URL位于:http://localhost/mulitsite1/wp-admin/customize.php

有没有一种方法可以让具有编辑器类型角色的人访问此页面,而无需修改核心Wordpresswp-admin/customize.php 文件

编辑:我查看了wp-admin/customize.php 文件并查看以下代码行:

} elseif ( current_user_can( \'edit_theme_options\' ) ) {
如果我给用户这样的功能:

get_role(\'subscriber\')->add_cap(\'edit_theme_options\');
他们可以访问我想要的定制器,但是,我不希望他们能够切换主题、更改小部件、菜单或侧栏,所以我只能让他们访问定制选项吗?

由于以下行位于wp-admin/customize.php 文件:

if ( ! current_user_can( \'customize\' ) ) {
我试图将其作为唯一的功能:

get_role(\'subscriber\')->add_cap(\'customize\');
但这并没有给我所需要的访问权限。

1 个回复
SO网友:Deadkraut

这是我的解决方案,它已经奏效了:

get_role(\'editor\')->add_cap(\'edit_theme_options\');
从Wordpress的3.0版开始,这是可能的

结束

相关推荐

插件开发-获取管理URL(包括不使用wp-admin的情况)

我目前正在编写WordPress插件,并希望检索WordPress管理员url。假设每个WordPress安装都使用默认的wp-admin 鼻涕虫我可以打电话get_admin_url(), 这是一个包装get_site_url(), 具有wp-admin 硬编码(参见此处:http://wpseek.com/function/get_admin_url/).然而,我不想在这个url永远不会改变的假设下工作。我希望能够检索url,无论它是否为默认url;i、 e.对于上述任一情况:http://examp