The $content_width
GLOBAL di WordPress efek banyak tema dan bahkan beberapa plugin dengan membatasi ukuran gambar dan embeds dalam posting, merupakan persyaratan untuk tema diserahkan ke wordpress.org.
Ini diatur dengan menggunakan:
$content_width = 584; // Twenty Twelve example
Jika Anda memasukkan gambar besar (default 1024x1024) ke dalam posting, hasilnya adalah:
src="../wp-content/uploads/2013/02/IMG_1390-1024x682.jpg" width="584" height="328"
Jika Anda menghapus pengaturan global ini dan memasukkan ukuran gambar yang sebenarnya, set dengan add_image_size
itu menghasilkan:
src="../wp-content/uploads/2013/02/IMG_13901-584x328.jpg" width="584" height="328"
Menghapus global dan menyisipkan gambar besar, yang sangat umum , sering menghasilkan penghematan lebih dari 2x, di halaman dengan banyak gambar, saya melihat ratusan KB disimpan pada pemuatan halaman.
Apakah menggunakan add_image_size
dan menghapus kemampuan untuk memasukkan gambar ukuran penuh bukan pilihan yang lebih baik?
ps. Saya menulis di sini dengan data yang lebih akurat
sumber
Jawaban:
Perlu diingat bahwa
$content_width
global tidak hanya digunakan untuk gambar, tetapi juga untuk objek yang disematkan, seperti video. Jadi, solusi apa pun tidak akan hanya berupa menjatuhkan penggunaan / dukungan$content_width
itu sendiri.Biasanya Tema akan membatasi gambar area konten dalam beberapa cara:
$content_width
sesuatu yang sesuai untuk desain Tema#content img { max-width: XXX; height: auto; }
memastikan bahwa gambar ukuran penuh yang dimasukkan tidak merusak tata letakset_post_thumbnail_size()
untuk menentukan Ukuran Gambar Utama / Post Thumbnail defaultthumbnail
. (Catatan: Saya pribadi tidak merekomendasikan menggunakan metode ini. Tetapkan ukuran gambar khusus untuk lokasi tertentu untuk gambar yang ditampilkan, dan kemudian panggil ukuran khusus itu di lokasi templat tertentu, melaluithe_post_thumbnail( $size )
.)Seperti yang telah Anda temukan, karena cara WordPress memilih dengan ukuran gambar menengah untuk digunakan untuk permintaan gambar apa pun yang diberikan, permintaan itu dapat menghasilkan gambar skala browser.
Nilai yang Ditentukan Tema untuk Gambar Besar
Salah satu opsi adalah mendefinisikan kembali pengaturan untuk dimensi gambar besar . (Lanjutkan dengan hati-hati. Ini bagus untuk situs Anda sendiri, tetapi Tema yang didistribusikan secara publik yang mengacaukan pengaturan konfigurasi pengguna adalah ... area abu-abu yang terbaik.)
Pengaturan dimensi gambar besar disimpan sebagai:
Jadi, Anda bisa mengatur nilai-nilai itu sesuai dengan
$content_width
nilai Anda :(Tentu saja, Anda ingin menaruh beberapa failafe / pengecekan kesalahan di sekitar ini, yang sesuai.)
Hapus Opsi untuk Menyisipkan Gambar Berukuran Penuh
Jika Anda hanya ingin mencegah pengguna memasukkan gambar ukuran penuh (sekali lagi: lanjutkan dengan hati-hati; ini mungkin wilayah Plugin), Anda dapat memfilter
'image_size_names_choose'
:Sekali lagi: Anda mungkin ingin menambahkan beberapa kegagalan yang waras di sini, karena filter ini digunakan di lebih dari satu tempat.
Tetapkan ukuran gambar khusus untuk gambar dengan post-lebar penuh
Terkait dengan opsi sebelumnya, Anda dapat menentukan
'full-post-width'
ukuran gambar:Kemudian, tambahkan ke daftar opsi yang tersedia:
sumber
get_option
nilai. Selebihnya mirip dengan intisari yang saya gunakan gist.github.com/wycks/4949242 yang ditautkan di tautan saya. Juga tampaknya menjadi area abu-abu tentang bagaimana membuat skala ini sebenarnya jika tema diubah.$content_width
atau tidak, masih diterapkan secara default ke objek yang tertanam saya pikir.image_size_names_choose
filter itu sampai sekarang! Saya telah mengganti seluruh bidang itu untuk mendapatkan ukuran khusus hingga sekarang. Apakah itu baru dalam 3,5 Chip?add_image_size
multibahasa, dan kemudian saya pikir itu akan baik untuk digunakan untuk masalah ukuran gambar ini. Jika Anda tidak memerlukan pelokalan, Anda bisa memasukkannya ke dalam array alih-alih meng-hardcoding-nya.Ya saya pikir begitu. Untuk menyiasati
$content_width
masalah tema yang dikirimkan ke repo saya menggunakan filter opsi untuk memaksa ukuran yang saya pilih untuk desain.sumber