Wordpress Public-Runnable PHP脚本

时间:2014-07-28 19:56:20

标签: php wordpress-plugin wordpress

我制作了一个Wordpress插件,要求网站访问者浏览插件中子文件夹中的.php文件。

但是,我注意到如果访问者没有登录,PHP脚本会重定向到404页面。

我需要停止此重定向,并允许执行脚本。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

WordPress默认情况下不会使用404页面阻止PHP文件。它可能是您的主机,htaccess或其他各种问题。

无论哪种方式,如果这是一个WordPress插件,你不想直接调用PHP文件。如果您直接调用它,则无法访问WordPress(例如,您无法使用get_option或bloginfo())。

相反,您应该在插件中使用PHP的include函数来包含它。有关获取插件工作目录的信息,请参阅plugin_dir_path

您可以将页面挂钩以轻松调用您的函数。例如:

function call_my_php_script() {
  if ( isset($_GET['myscript']) && $_GET['myscript'] == 'run' ) {
    include( plugin_dir_path( __FILE__ ) . 'scripts/my-script.php' );
    exit;
  }
}
add_action('init', 'call_my_php_script');

然后通过:http://example.org/?myscript=run

访问您的脚本

您可能希望将插件目录存储在全局/常量变量中,因为plugin_dir_path函数仅适用于原始插件文件。