Bagaimana Anda mendapatkan ukuran thumbnail postingan?


13

Saya tahu cara mengatur ukuran gambar thumbnail pos menggunakan WP Media Admin Settings atau menggunakan fungsi ini :

set_post_thumbnail_size( 150, 150 )

Tapi bagaimana cara mendapatkan lebar dan tinggi gambar yang telah ditetapkan untuk ukuran thumbnail gambar?

Saya ingin dapat melakukan sesuatu seperti ini:

get_post_thumbnail_size(); // return array(150, 150)

Bagaimana ini akan dilakukan? Apakah dengan menggunakan get_option(), dan apakah tombol pilihan untuk lebar dan tinggi thumbnail?

Jawaban:


8

Ketika ukuran gambar ditambahkan baik oleh WordPress ( add_image_size), atau dengan plugin atau kode kustom Anda sendiri ditambahkan ke $_wp_additional_image_sizesglobal, saya tidak dapat menemukan fungsi yang sama untuk menarik data dari global itu, tetapi Anda tentu saja bisa melihat ke dalam global untuk menentukan lebar dan tinggi yang dimiliki oleh ukuran gambar yang terdaftar.

Contoh:

global $_wp_additional_image_sizes;
// Output width
echo $_wp_additional_image_sizes['post_thumbnail']['width'];
// Output height
echo $_wp_additional_image_sizes['post_thumbnail']['height'];

Tentu saja pastikan untuk merujuk nilai-nilai itu pada suatu titik setelah Anda mengatur ukurannya. Jadi jika misalnya Anda mengatur ukuran thumbnail selama init, Anda harus memastikan untuk melakukan apa pun yang Anda butuhkan setelah titik itu (kalau tidak Anda akan mendapatkan kembali ukurannya seperti sebelum menetapkannya).

Semoga itu bisa membantu.


Tampaknya post-thumbnaillebih daripada post_thubmnail(WP3.6)
user2019515

15

Namun ada cara lain:

get_option( 'thumbnail_size_w' );
get_option( 'thumbnail_size_h' );

Catatan: thumbnailadalah salah satu ukuran yang diatur di dalam $_wp_additional_image_sizes. Jadi panggilan untuk get_option()bekerja untuk setiap ukuran gambar lainnya juga.


4
Ini sebenarnya pilihan terbaik karena plugin dapat menjalankan pengaitnya di atasnya.
fuxia

1
Itu sebabnya saya terkejut belum disebutkan.
Tandai


1

Perlu diingat bahwa ini global $_wp_additional_image_sizes; mungkin tidak berfungsi seperti yang diharapkan. Misalnya ketika menggunakan dalam plugin itu tidak akan mengembalikan ukuran tambahan bahwa Tema telah terdaftar.


Ini akan terjadi jika Anda membuat panggilan nanti cukup dalam urutan tindakan, yaitu. jika tema mendaftarkan ukuran pada tindakan init, panggilan Anda harus dilakukan setelah tindakan tersebut terjadi.
t31os

1

Satu-satunya yang masih hilang adalah ID thumbnail:

$post_thumbnail_id = get_post_thumbnail_id( $post_id );
$attachment = wp_get_attachment_image_src( $post_thumbnail_id );
$width=$attachment[1];
$height=$attachment[2];


-1

Selain posting di atas:

$attachment = wp_get_attachment_image_src( $attachment_id ); // where $attachment_id is the ID of the attachment you want to get the thumbnail from

Kemudian cukup gunakan kode berikutnya untuk menampilkan url, lebar dan tinggi:

echo $attachment[0]; // url
echo $attachment[1]; // width
echo $attachment[2]; // height
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.