包括插件的文件不包括

时间:2012-10-13 作者:equilibrium3

我有一个插件,我需要包括一个文件,但它不包括。

下面是该树的示例:

plugin folder
    /themes
    /folder2
    /somefiles
    /includeme.php
主题内是

/default
/theme2
然后在每个主题中都有文件。G

Header.php
Footer.php
该插件通过管理员简单地切换这些主题。

现在在页眉中。我添加的php

<?php include(\'includeme.php\'); ?>
这不管用。

一位朋友告诉我,因为这是树上的两层,所以我实际上应该添加

<?php include(\'/../../includeme.php\'); ?>.
两者都不起作用。

我在google上搜索了一些说要试试的东西。

<?php include([$_SERVER][\'DOCUMENT_ROOT\']\'./wp-content/plugins/plugin-name/includeme.php\'); ?>.
这也没用。这是一个基本插件,它根据管理设置和用户代理检测相结合来呈现主题。

是否需要任何建议或进一步的代码?

代码位于http://pastebin.com/A3buAA0R

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

在主插件文件中,使用plugin_dir_path 定义一个常数,然后可以在所有Include中使用该常数。参见上述codex页面上的示例。

// define the constant in your main plugin file
define( \'MYPLUGINNAME_PATH\', plugin_dir_path(__FILE__) );
然后,要包含您的文件:

include MYPLUGINNAME_PATH . \'includeme.php\';

结束

相关推荐

TEMPLATE_INCLUDE(通过当前主题覆盖默认插件模板)

这是this question/answer. 关于这个问题的评论提到template_include 优先于template_redirect 从插件加载模板时。但是,将此挂起到template\\u include会破坏网站上的所有内容(任何其他页面视图),但使用布局替代的布局除外http://pastebin.com/LWpSrfim 但是使用template\\u include只预先添加内容(到放置在主题目录覆盖中的任何模板文件)——例如,下面仍然输出标准的单一视图。编辑:源代码<?php