BU DERSİN BAŞLIKLARI
add_image_size( string $ismi, int $genişlik, int $yükseklik, bool|array $kırpılsın = false )
Açıklaması:
Belli genişlik ve yükseklik değerleri tanımlayarak, resimler için, dilediğimizde kullanmak üzere, bir en-boy değeri oluşturmamızı sağlar. Resmi, belirlediğimiz en-boy oranına getirirken, dilersek de kırpar.
Add_image_size()
fonksiyonu, funcitons.php
dosyasında ve şu şekilde kullanılır:
add_action( 'after_setup_theme', 'ilktemam_setup' );
function ilktemam_setup() {
add_image_size( .... );
}
Parametreleri:
$ismi
(Zorunludur) Belirlediğimiz en-boy oranı için, kimlik niteliğinde bir addır. Link adı formatında olmalıdır. Add_image_size()
fonksiyonu ile oluşturduğumuz resim boyutlarını daha sonra kullanmak istediğimizde, burada belirlediğimiz isimden yararlanacağız.
$genişlik
(int) Resmin pixel cinsinden genişlik değeridir. Varsayılan değeri 0 olarak ayarlanmıştır.
$yükseklik
(int) Resmin pixel cinsinden yükseklik değeridir. Varsayılan değeri 0 olarak ayarlanmıştır.
$kırpılsın
(bool|array) Resmi yeniden boyutlandırırken kırpma işleminin yapılıp yapılmayacağını, yapılacaksa nasıl yapılacağını belirleyen parametredir.
Add_image_size()
fonksiyonunun bu parametrenin değerine göre davranışı şöyle olur:
1. False
değeri varsayılan değerdir ve bu değerde, resim kırpılmaz.
2. Argümanın değeri, kırpmanın başlayacağı noktanın koordinatlarını veren bir dizi şeklinde olursa, bu dizi şu formatta olmalıdır:
array('x_crop_position','y_crop_position')
'x_crop_position'
: Kırpmanın başlayacağı noktanın yatay koordinatıdır. ‘left’
, ‘center’
veya ‘right’
değerlerini alır. Bu değerler sırasıyla; “sol”, “merkez” ve “sağ” anlamına gelir.
'y_crop_position'
: Kırpmanın başlayacağı noktanın dikey koordinatıdır. ‘top’
, ‘center’
veya ‘bottom’
değerlerini alır. Bu değerler sırasıyla; “üst”, “merkez” ve “alt” anlamına gelir.
3. True
değeri verilirse, resim, merkez koordinatları ile kırpılır.
WordPress, bir ortam yükleyicisi ile bir resim yüklediğinizde, resmi kaydederken, bu fonksiyonda belirtilen boyutları ile de kaydeder. Bu yüzden, add_image_size()
fonksiyonu kullanılmadan önce yüklenen resimler, tam olarak bu fonksiyonda belirtilen boyutlarla gelmeyebilir.
Döndürdüğü değer:
Fonksiyon herhangi bir değer döndürmez.
Kaynak kodu:
Dizini: wp-includes/media.php
function add_image_size( $name, $width = 0, $height = 0, $crop = false ) {
global $_wp_additional_image_sizes;
$_wp_additional_image_sizes[ $name ] = array(
'width' => absint( $width ),
'height' => absint( $height ),
'crop' => $crop,
);
}
Örnek kullanım:
Örnek-1
Resimleri, 220 pixel genişliğinde, 180 pixel yüksekliğinde ve resmin oranını bozmadan kaydeder.
add_action( 'after_setup_theme', 'ilktemam_setup' );
function ilktemam_setup() {
add_image_size( 'ozel-boyutum', 220, 180 );
}
Örnek-2
Resimleri, 220 pixel genişliğinde, 180 pixel yüksekliğinde ve resmin merkezine göre kırparak kaydeder.
add_action( 'after_setup_theme', 'ilktemam_setup' );
function ilktemam_setup() {
add_image_size( 'ozel-boyutum', 220, 180, true );
}
Örnek-3
Resimleri, 220 pixel genişliğinde, 180 pixel yüksekliğinde ve resmin sol üst köşesinden başlayarak kırpar ve kaydeder.
add_action( 'after_setup_theme', 'ilktemam_setup' );
function ilktemam_setup() {
add_image_size( 'ozel-boyutum', 220, 180, array( 'left', 'top' ) );
}
Örnek-4
Dilerseniz, aynı anda birkaç tane farklı boyut kaydı yapabilirsiniz:
add_action( 'after_setup_theme', 'ilktemam_setup' );
function ilktemam_setup() {
add_image_size( 'tek-yazi-sayfasi-gorseli', 420, 380, array( 'left', 'top' ) );
add_image_size( 'anasayfa-gorselleri', 220, 180, true );
}
Örnek-5
Add_image_size()
fonksiyonu ile kaydettiğimiz "ozel-boyutum"
isimli en-boy değerini, aşağıdaki şekillerde kullanabiliriz:
<?php echo wp_get_attachment_image( 2046, 'ozel-boyutum' ); ?>
if ( has_post_thumbnail() ) {
the_post_thumbnail( 'ozel-boyutum' );
}