为什么从插件代码中提取html会导致无法访问WordPress功能?

时间:2012-12-11 作者:Nick Pickering

在定义为管理员设置页面生成HTML内容的回调时,我想将HTML抽象到一个单独的文件中,但HTML使用一些wordpress函数,特别是current\\u user\\u can和screen\\u图标。当通过包含的文件调用这些文件时,它们声称是未定义的,但可以很好地内联工作。

function admin_menu_page_content() {

        if ( !current_user_can( \'manage_options\' ) )  {
            wp_die( __( \'You do not have sufficient permissions to access this page.\' ) );
        }
        ?>
        <div class="wrap">  

            <?php include(plugins_url(\'plugin_name/forms/admin_form.php\')) ?>
        </div> 
        <?php
    }

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

使用plugin_dir_path() 包括可执行文件。plugins_url() 返回您不需要的web地址。

<?php include(plugin_dir_path(__FILE__) . \'forms/admin_form.php\') ?>

结束

相关推荐

更改wp-config.php破坏了站点

我添加了行define( \'WP_CONTENT_DIR\', $_SERVER[\'DOCUMENT_ROOT\'] . \'/blog/wp-content\' ); 和define( \'WP_CONTENT_URL\', \'example/blog/wp-content\';); 在我的wp配置中。php,然后我的网站崩溃了。甚至后端的一些小部件也不再显示。我立即从wp-config.php 然而,这并没有改变任何事情。请帮忙