用户名和密码可以在IFRAME中传递到WP登录页面吗?

时间:2014-06-23 作者:Thunder

我使用的是一个房地产商业主题,在前端使用自定义登录/注册。

管理面板和选项页仅限于管理员使用,但if the theme is deactivated, 非管理员可以访问管理面板,查看列出作者的设置选项。

当主题处于活动状态时,作者只能通过前端登录查看站点的前端。

我已经使用另一个流行的WP插件将iframe嵌入到用户前端表单中。

在IFrame中,可以访问WP登录,这将导致核心WP管理屏幕,在那里可以看到插件,并且具有作者角色的用户可以使用该插件。

但是我需要使用与前端相同的用户名和密码打开此WP Admin视图。

将用户的前端登录凭据传递回IFrame中的核心WP管理员的最佳方式是什么?

所以当IFrame调用时wp-admin/wp-admin/plugins.php 它将显示相同的核心wp-admin 是否视为未安装房地产主题?

无论是定制房地产开发人员还是IFrame插件开发人员都无法解决这种情况。

1 个回复
SO网友:Tom J Nowell

在浏览器中加载管理面板与在iframe中加载管理面板是一样的。除非你以某种方式区分它们,否则你无法在不阻止另一个的情况下阻止其中一个。

您需要让阻止用户访问管理面板的代码查找一些标识符,例如:

if the URL has iframe=true in the url
    don\'t restrict the admin panel
如何做到这一点的细节取决于主题中限制管理员的代码。

但这将有一个问题,即在iframe内单击的任何url也将受到限制,同时还会受到管理AJAX的限制,但这取决于管理限制代码的工作方式

我的建议是不要麻烦。要正确执行此操作,您还需要问以下问题:

如何隐藏管理工具栏

将您的设置页面设置为需要管理员权限,这样作者在登录到后端时将无法看到这些页面,请从“管理”菜单中删除其他页面,所有这些页面都是本网站上其他人要求的。

最后一点,主题是用于视觉/演示,而不是功能。您应该获取管理员限制代码,并将其移动到自己的插件中。这样,即使主题被停用,管理员也会受到限制

结束