是否正确使用媒体上载的根目录?

时间:2020-02-09 作者:spacer GIF

我知道我正在尝试做的是不推荐的-请不要回复只是为了告诉我这一点。

我通过添加define( \'UPLOADS\', \'\' );wp-config.php, 除了我上传的URL以双斜杠结束外,它工作得很好(https://example.com//photo.jpg). 我在“常规设置”中为网站定义的地址没有尾部斜杠。

虽然这不会破坏任何东西,但如果有人复制URL,它看起来有点奇怪,因此最好是解决。到目前为止,我已经尝试按照使用绝对URLthis answer (这样做只会导致https://example.com/https://example.com/photo.jpg) 并根据插入退格字符this answer, 这有点长了。

1 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

WordPress上载目录的路径和URL由wp_upload_dir() 应用名为upload_dir 可用于修复附件URL中的双斜杠。

因此,如果您关闭“将我的上载内容组织到基于月份和年份的文件夹中”setting, 尝试以下方法:

add_filter( \'upload_dir\', function ( $data ) {
  $data[\'baseurl\'] = untrailingslashit( $data[\'baseurl\'] );
  return $data;
} );
你可以使用upload_dir 筛选以更改上载目录路径/URL/等,而无需使用UPLOADS 常数

相关推荐

Extra "uploads" added in path

虽然这与高级自定义字段相关,但此函数使用所有本机WP特性,因此我认为在这里询问这一点是合适的。路径中的额外“/上传/”来自何处?在后端,我看到了上传文件的正确链接(domain.com/wp-content/member-files/name.pdf),但在前端,URL在路径(domain.com/wp-content/uploads/member-files/name.pdf)中显示了额外的“/uploads/”,当然为文件生成了404。// file upload to custom location