Online Kimya Özel Dersi Al

ÜCRET

KONU

TARİH

Add_image_size()

WordPress Fonksiyonları
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' ); 
}

DERSİN SONU

Kimya Özel Dersi Al

Yorum yaparak bize destek olabilirsiniz.

Bir cevap yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu kadar HTML serbest:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>