为Wordpress编写插件,无法设置上传文件夹。我用Google搜索时找到了这个:
$upload_dir = "images/objects" . (isset($_REQUEST['ObjectNo']) ? "/{$_REQUEST['ObjectNo']}" : "");
$plugin_dir = WP_PLUGIN_DIR . '/' . BGREAL_PLUGIN_NAME;
$plugin_url = WP_PLUGIN_URL . '/' . BGREAL_PLUGIN_NAME;
function sss_configure_upload_dir($path_data)
{
global $upload_dir;
global $plugin_dir;
global $plugin_url;
$path_data['path'] = $plugin_dir . "/" . $upload_dir;
$path_data['url'] = $plugin_url . "/" . $upload_dir;
$path_data['subdir'] = "/" . $upload_dir;
$path_data['basedir'] = $plugin_dir;
$path_data['baseurl'] = $plugin_url;
return $path_data;
}
add_filter('upload_dir', 'sss_configure_upload_dir');
在上传者框架打开的页面上,我有以下内容:
$upl = wp_upload_dir();
echo $upl['path'];`
回应C:\PATH\TO\HTDOCS\public_html/wp-content/plugins/bg_real/images/objects/11212
问题是,当我打开媒体上传框架并上传图片时,由于/wp-content/plugins/bg_real/images/objects
功能中缺少$_REQUEST['ObjectNo']
,因此保存到async-upload
。
我需要在查询字符串ObjectNo
后的文件夹中组织图像。
有什么想法吗?花了几个小时在谷歌等,并尝试了不同的方法,但似乎都没有。
谢谢,
答案 0 :(得分:0)
我为WordPress维护Custom Upload Dir-plugin。它使用户能够拥有上下文感知的上传路径(例如:以当前帖子或作者命名的文件夹,日期时间等)。修改我的过滤器以包含您的查询字符串是微不足道的。
答案 1 :(得分:0)
如果有人偶然发现这一点,您可以使用UPLOADS
文件中的wp-config.php
目录常量:
// before including wp-settings.php
define( 'UPLOADS', WP_CONTENT_DIR.'/my-upload-target' );
那就是它。其余的人会自动受到关注。