在为插件编写 Wordpress 管理选项页面时包含文件
Including files when writing Wordpress admin options page for a plugin
所以我在单独的 php 文件中编写了几个 classes 来帮助我在用户填写表单时进行 API 调用插件选项页面。
我还有一个配置文件,其中包含一些我想包含在选项页面上的变量。
我遇到的问题是,当我需要这些文件时,它们似乎包括在内,因为没有致命错误,但是 none 变量或 classes 可用于函数 I挂钩到动作 'admin_menu'.
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/config.php');
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/license.php');
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/member.php');
function product_dyno_plugin_menu() {
add_options_page( 'Product Dyno Options', 'Product Dyno',
'manage_options', 'activate-plugin-with-product-dyno',
'product_dyno_options' );
}
add_action( 'admin_menu', 'product_dyno_plugin_menu' );
function product_dyno_options() {
$license = new License();
if ( !current_user_can( 'manage_options' ) ) {
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
echo '<div class="wrap">';
echo '<h2>Activate plugin '.$PLUGIN_NAME.'</h2>';
echo '</div>';
.......
$PLUGIN_NAME 是 config.php 所必需的,我收到变量未定义的错误。
奇怪的是,class 似乎确实包含在内,因为在 class 的构造函数中使用的变量也包含在 config.php 中,但返回时也是未定义的。
我假设这与已发送的 headers 或 wp 操作的顺序有关,但我真的无法解决,而且我在任何网站上都找不到类似的问题论坛!
任何指点将不胜感激!
我认为,$Plugin_name 是在 config.php 文件中定义的,此文件中定义的所有值在程序函数中都不可用。
有两种获取函数数据的方法:
- 使用全局
- 使用 new config()(如果 config.php 站在 class 中)
要使用全局:在 product_dyno_options() 的顶部,添加 global $PLUGIN_NAME;
.
如果 config.php 在 class 中,使用与许可证相同的方式。在函数中
$config = new config ();
然后在你想要的地方这样称呼它:
$config->plugin_name;
希望对您有所帮助
所以我在单独的 php 文件中编写了几个 classes 来帮助我在用户填写表单时进行 API 调用插件选项页面。 我还有一个配置文件,其中包含一些我想包含在选项页面上的变量。 我遇到的问题是,当我需要这些文件时,它们似乎包括在内,因为没有致命错误,但是 none 变量或 classes 可用于函数 I挂钩到动作 'admin_menu'.
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/config.php');
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/license.php');
require_once( plugin_dir_path( __DIR__ ) . 'product-dyno/member.php');
function product_dyno_plugin_menu() {
add_options_page( 'Product Dyno Options', 'Product Dyno',
'manage_options', 'activate-plugin-with-product-dyno',
'product_dyno_options' );
}
add_action( 'admin_menu', 'product_dyno_plugin_menu' );
function product_dyno_options() {
$license = new License();
if ( !current_user_can( 'manage_options' ) ) {
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
echo '<div class="wrap">';
echo '<h2>Activate plugin '.$PLUGIN_NAME.'</h2>';
echo '</div>';
.......
$PLUGIN_NAME 是 config.php 所必需的,我收到变量未定义的错误。
奇怪的是,class 似乎确实包含在内,因为在 class 的构造函数中使用的变量也包含在 config.php 中,但返回时也是未定义的。
我假设这与已发送的 headers 或 wp 操作的顺序有关,但我真的无法解决,而且我在任何网站上都找不到类似的问题论坛!
任何指点将不胜感激!
我认为,$Plugin_name 是在 config.php 文件中定义的,此文件中定义的所有值在程序函数中都不可用。
有两种获取函数数据的方法:
- 使用全局
- 使用 new config()(如果 config.php 站在 class 中)
要使用全局:在 product_dyno_options() 的顶部,添加 global $PLUGIN_NAME;
.
如果 config.php 在 class 中,使用与许可证相同的方式。在函数中
$config = new config ();
然后在你想要的地方这样称呼它:
$config->plugin_name;
希望对您有所帮助