圖片在wordpress中的大小在哪裏?在數據庫中?在一個文件夾中?如何在wordpress中調整/訪問原始圖片?
我將如何去調整原始圖片(不是創建新版本)。我問了這個問題,因爲我上傳了很多圖片,這些圖片太大了,並且減慢了wordpress網站的加載時間,我想調整它們的大小,所以沒有任何大於1500px的尺寸。
我已經看了幾個插件,包括「重新生成縮略圖」,但可能有一個實際上做了我想要的東西,我還找不到。
圖片在wordpress中的大小在哪裏?在數據庫中?在一個文件夾中?如何在wordpress中調整/訪問原始圖片?
我將如何去調整原始圖片(不是創建新版本)。我問了這個問題,因爲我上傳了很多圖片,這些圖片太大了,並且減慢了wordpress網站的加載時間,我想調整它們的大小,所以沒有任何大於1500px的尺寸。
我已經看了幾個插件,包括「重新生成縮略圖」,但可能有一個實際上做了我想要的東西,我還找不到。
您可以使用WordPress'add_theme_support和add_image_size爲圖片添加多個尺寸,這意味着當您上傳新的縮略圖時,WordPress將創建具有指定尺寸的張貼縮略圖的副本。要了解更多關於這些技術,您可以read this tutorial。
在WordPress中還有另一個功能,它的image_resize可以用來縮小圖像以適合特定尺寸並保存圖像的新副本。
大多數開發人員使用add_image_size
添加多個圖像的大小不同palces顯示,即可以用一個形象在你的主頁的featured image
並且還可以在single.php
頁面中使用相同的圖像的另一個大小。要做到這一點,你必須使用
add_theme_support('post-thumbnails');
add_image_size('homepage-thumb', 220, 180); // 220 pix width,180 pix height
add_image_size('singlepost-thumb', 590, 9999); // Unlimited Height Mode
要顯示在主頁的homepage-thumb
圖像,你可以使用
if (has_post_thumbnail()) { the_post_thumbnail('homepage-thumb'); }
還是在single.php
模板,你可以使用
if (has_post_thumbnail()) { the_post_thumbnail('singlepost-thumb'); }
你也可以看看this plugin和this article也可能有用。希望能幫助到你。
那麼,圖像將「隨時」調整大小,然後存儲在服務器中,並將其信息記錄在數據庫中。
原始遺骸和所有「縮略圖」都會生成。在這種情況下,「縮略圖」是指所有WP生成的圖像大小,大小。
我在WordPress StackExchange上回答了same question。解決方案來自這篇文章:How to automatically use resized images instead of originals。
該腳本將取代上傳的圖片由WordPress的生成,保存在你的服務器空間,節省帶寬,如果您鏈接的縮略圖原來的大圖像(如果不是在你的設置中定義的大尺寸更大)圖像,就像使用lightbox插件一樣。
add_filter('wp_generate_attachment_metadata','replace_uploaded_image');
function replace_uploaded_image($image_data)
{
// if there is no large image : return
if (!isset($image_data['sizes']['large']))
return $image_data;
// paths to the uploaded image and the large image
$upload_dir = wp_upload_dir();
$uploaded_image_location = $upload_dir['basedir'] . '/' . $image_data['file'];
$large_image_location = $upload_dir['path'] . '/' . $image_data['sizes']['large']['file'];
// delete the uploaded image
unlink($uploaded_image_location);
// rename the large image
rename($large_image_location, $uploaded_image_location);
// update image metadata and return them
$image_data['width'] = $image_data['sizes']['large']['width'];
$image_data['height'] = $image_data['sizes']['large']['height'];
unset($image_data['sizes']['large']);
return $image_data;
}
據我所知,沒有任何插件,將直接調整您的原始圖像而改變自己的元數據,但我已經找到了一個解決方法(我有一個類似的問題對你),它不需要編碼。
哦,重新讀Q,我意識到你正在談論你已經存儲的圖像,這個解決方案是用於新上傳的... – brasofilo