__FILE__ in WordPress plugins

时间:2011-08-27 作者:Wordpressor

我正在使用Sidebar Generator 在我所有的主题中。

该插件在“plugins”目录下正常工作,但我想以某种方式将其嵌入到我的主题中,因此它不会显示在已安装的插件列表中。

我刚刚复制了sidebar\\u生成器。php(幸运的是,整个代码都在一个文件中)到mytheme/插件,并将其包含在函数中。php

require_once (MY_PLUGINS . \'/sidebar_generator.php\');  
现在,它适用于所有其他插件,但不适用于这个插件!这样,当我点击“侧栏”时,它会刷新实际页面,而不是加载插件的admin\\u页面。

你知道为什么会发生这种情况,以及如何让它发挥作用吗?

我认为问题在于:

add_submenu_page(\'themes.php\', \'Sidebars\', \'Sidebars\', \'manage_options\', __FILE__, array(\'sidebar_generator\',\'admin_page\'));
更改FILE 其他一些东西会有所帮助,但我不知道如何将此子菜单链接指向实际的插件管理页面。

2 个回复
最合适的回答,由SO网友:Milo 整理而成

它应该工作(当我在一个新的WP安装上测试时也会这样做)__FILE__, 虽然不推荐使用它,因为它公开了服务器路径,通常只是一个丑陋的URL。只要它是唯一的,就可以用“sb generator options”之类的唯一标识符来替换它。重要的部分是最后一个参数,它告诉它使用什么函数来呈现页面。

你可能要搬家吗add_submenu_page 插件文件,或者你只是在原地编辑它?

SO网友:Yogesh Nayi

这个__FILE__ 将返回文件名为的完整路径。这是PHP的神奇方法。

结束

相关推荐

Sort plugins by rating

当我想安装一个新的Wordpress插件时,我会搜索我想要的插件,并收到一个结果列表。有没有办法按评级或名称对结果进行排序?如果没有,它将是Wordpress的一个有用的补充。