我已经使用过上传文件的过滤器。我得到的最接近的结果是将文件上载到目录,但在文件上载后,我得到了一系列错误:Undefined index: post_id
我认为问题很简单,就是无法访问当前的帖子id。我已经尝试过了$wp_query->post->ID;
和$post->ID
这两种方法似乎都不管用。这些文件将始终与帖子关联。
我正在使用的代码的最后一次迭代:
// filter for uploads
function ml_media_upload_dir($upload) {
$id = $_REQUEST[\'post_id\'];
$parent = get_post( $id )->post_parent;
if (isset($_REQUEST[\'post_id\'])) {
$upload[\'path\'] = "/foo/www/folder/blog/wp-content/uploads/" . $id;
$upload[\'url\'] = "http://foo.com/blog/wp-content/uploads/" . $id;
$upload[\'basedir\'] = "/foo/www/folder/blog/wp-content/uploads/" . $id;
$upload[\'baseurl\'] = "http://foo.com/blog/wp-content/uploads/" . $id;
if (!file_exists("/foo/www/folder/blog/wp-content/uploads/" . $id)) {
mkdir("/foo/www/folder/blog/wp-content/uploads/" . $id, 0777);
}
}
return $upload;
}
add_filter(\'upload_dir\', \'ml_media_upload_dir\');
我甚至尝试添加另一个带有post\\u action=1参数的“插入媒体”链接进行测试。(
http://foo.com/blog/wp-admin/media-upload.php?post_id=571&TB_iframe=1&post_action=1&width=640&height=567
)
如果有post\\u id,如何确保文件加载到特定文件夹中?
任何帮助。。
干杯Bo公司