Wordpress 在特定文件夹中上传媒体以获得特殊 post
Wordpress upload media in a specific folder for a special post
我是 wordpress 的初学者。我必须在 root(http://www.domain.com/myfoldername) 的子文件夹中上传一个特殊的 post 文件。它仅适用于特殊 post,而不适用于所有。不需要更改我的默认目录,我也不想不使用任何插件。
谁能帮我做这个?我已经搜索过了,但没有得到任何解决方案。
谢谢
通过WordPress,您只能上传默认上传目录中的文件。如果您不想使用任何插件,则无法在不同的目录中上传文件。您可以通过 FTP 将文件上传到任何您想要的位置,然后只需将文件的 link 放入 post.
为您的特定页面尝试此代码。
add_filter('upload_dir', 'upload_image_specific_calback');
函数 upload_image_specific_calback( $param ){
//$_GET['post'] which is your target post like 10 is post id.
//After click update button.
if(isset($_GET['post'])){
if($_GET['post'] == 71){
$param = array(
'path' => get_home_path().'myfoldername',
'url' => home_url().'/myfoldername',
'subdir' => '',
'basedir' => get_home_path(),
'baseurl' => home_url(),
'error' => false
);
}
}
//$_POST['post_id'] which is your target post like 10 is post id.
//instant upload time before save
if(isset($_POST['post_id'])){
if($_POST['post_id'] == 71) {
$param = array(
'path' => get_home_path().'myfoldername',
'url' => home_url().'/myfoldername',
'subdir' => '',
'basedir' => get_home_path(),
'baseurl' => home_url(),
'error' => false
);
}
}
error_log("path={$param['path']}");
error_log("url={$param['url']}");
error_log("subdir={$param['subdir']}");
error_log("basedir={$param['basedir']}");
error_log("baseurl={$param['baseurl']}");
error_log("error={$param['error']}");
return $param;
}
我是 wordpress 的初学者。我必须在 root(http://www.domain.com/myfoldername) 的子文件夹中上传一个特殊的 post 文件。它仅适用于特殊 post,而不适用于所有。不需要更改我的默认目录,我也不想不使用任何插件。
谁能帮我做这个?我已经搜索过了,但没有得到任何解决方案。
谢谢
通过WordPress,您只能上传默认上传目录中的文件。如果您不想使用任何插件,则无法在不同的目录中上传文件。您可以通过 FTP 将文件上传到任何您想要的位置,然后只需将文件的 link 放入 post.
为您的特定页面尝试此代码。
add_filter('upload_dir', 'upload_image_specific_calback'); 函数 upload_image_specific_calback( $param ){
//$_GET['post'] which is your target post like 10 is post id.
//After click update button.
if(isset($_GET['post'])){
if($_GET['post'] == 71){
$param = array(
'path' => get_home_path().'myfoldername',
'url' => home_url().'/myfoldername',
'subdir' => '',
'basedir' => get_home_path(),
'baseurl' => home_url(),
'error' => false
);
}
}
//$_POST['post_id'] which is your target post like 10 is post id.
//instant upload time before save
if(isset($_POST['post_id'])){
if($_POST['post_id'] == 71) {
$param = array(
'path' => get_home_path().'myfoldername',
'url' => home_url().'/myfoldername',
'subdir' => '',
'basedir' => get_home_path(),
'baseurl' => home_url(),
'error' => false
);
}
}
error_log("path={$param['path']}");
error_log("url={$param['url']}");
error_log("subdir={$param['subdir']}");
error_log("basedir={$param['basedir']}");
error_log("baseurl={$param['baseurl']}");
error_log("error={$param['error']}");
return $param;
}