0

当我在其中执行此代码时,functions.php我得到了路径:

$upload_dir = wp_upload_dir();
echo $upload_dir['path'];

//Returns: /some/correct/path/

但我希望将此路径移动到我uploads.php无法执行的自定义脚本wp_upload_dir();。我显然也不能include()使用functions.php,因为它会执行位于那里的所有其他内容。

有什么棘手的方法可以将$upload_dir变量传递给uploads.php?

4

2 回答 2

1

您只需要加载wp-load.php 即可访问所有 wordpress 功能,只需执行以下操作:

<?php
   require( '../wordpress_install_root/wp-load.php' );
   $upload_dir = wp_upload_dir();
   echo $upload_dir['path'];
?>

这是一个简单的方法。

于 2012-07-13T14:11:55.753 回答
1

只需在外部 php 文件的顶部包含以下内容:

$wp_url = str_replace('wp-content/plugins/YOUR_PLUGIN_NAME/includes', "", dirname(__FILE__));
include_once($wp_url . 'wp-load.php');

显然将 YOUR_PLUGIN_NAME 替换为您的插件名称。我在 Paypal 和其他支付网关调用的单个文件中使用它。

有些人还使用以下内容,但我从未让它正常工作,我不确定它是否已被弃用。

require_once('../../../../wp-blog-header.php');
于 2012-07-13T14:12:28.063 回答