因为在wordpress中,上传的文件/图像以3种不同的大小存储,从而占用了内存.我有一个代码,根据该图像的URL重新调整图像大小.调整大小的代码是:
$img = wp_get_image_editor( $image_url );
if ( ! is_wp_error( $img ) ) {
$img->resize( 200, 200, false );
$filename = $img->generate_filename(
'final',
ABSPATH.'wp-content/uploads',
NULL
);
$img->save($filename);
}
Run Code Online (Sandbox Code Playgroud)
所以我想使用这段代码从用户的本地路径调整图像大小,这样我就不会耗费太多的内存.谁能告诉我如何获取url上传的文件的本地路径和URL?
我们可以用于get_attached_file()
根据附件 ID 检索附加文件路径
尝试:
<?php
get_attached_file( $attachment_id);
?>
Run Code Online (Sandbox Code Playgroud)
从 URL 获取图像的本地路径如何?:
function ContentUrlToLocalPath($url){
preg_match('/.*(\/wp\-content\/uploads\/\d+\/\d+\/.*)/', $url, $mat);
if(count($mat) > 0) return ABSPATH . $mat[1];
return '';
}
Run Code Online (Sandbox Code Playgroud)
它假定文件位于上传文件夹中。
归档时间: |
|
查看次数: |
5864 次 |
最近记录: |