Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

tr:Kosul Etiketleri

Açıklama

Koşul Etiketleri farklı durumlarda hangi içeriğin gösterileceğine karar verirken kullanılırlar. Örneğin, belli yazılarınızı sadece ana sayfanızda göstermek isteyebilirsiniz. Bu durumda is_home() Koşul Etiketi ile bu işi kolaylıkla yapabilirsiniz.

Not: Bu etiketler WordPress'teki Tema Hiyerarşisi'ne bağlıdır.

Koşul Etiketleri Hakkında

Bütün koşul etiketleri bir durumun oluşup, oluşmadığını kontrol eder ve TRUE ya da FALSE değeri döndürür. Aşağıdaki açıklamalarda bu etiketlerin TRUE değeri döndürdüğü durumlar anlatılmıştır, tersi durumda FALSE değeri döndüreceklerdir. Bu etiketler ayrıca parametre de alabilmektedirler.

Ana Sayfa

is_home() 
Günlüğün ana sayfası görüntülendiğinde. (WordPress 2.1 bu fonksiyonu öncelik bakımında farklı ele alır. Bkz. Alternate Methods for Setting the Front Page for pre-2.1 WP.)

Not: Eğer sitenizde Ana sayfa olarak statik bir sayfa kullanıyorsanız bu etiket yazılarınızı gösterdiğiniz sayfada TRUE değeri alacaktır.

Ön Sayfa

is_front_page() 
Yazılarınızın görüntülendiği ya da ana sayfanız için ayarladığınız sabit sayfa görüntülendiğinde. 'Ayarlar > Okuma ->Ön Sayfa Görünümleri' ayarını "Son Yazılarınız", veya when 'Ayarlar > Okuma ->Ön Sayfa Görünümleri' ayarını "Bir durağan sayfa" olarak ayarladığınızda ve "Ön Sayfa" bölümünde belirttiğiniz sayfa görüntülendiğinde true değeri döndürür. Not: bu etiket Version 2.5 sürümünde eklendi.

Yönetim Panelleri

is_admin()
Başlangıç sayfası ya da yönetim sayfalarından birisi görüntülendiğinde.

Tekil Yazı/Sayfa

is_single() 
Herhangi bir tekil yazı/sayfa görüntülendiğinde.
is_single('17') 
ID'si 17 olan yazı görüntülendiğinde.
is_single('Irish Stew') 
Başlığı "Irish Stew" olan yazı görüntülendiğinde.
is_single('beef-stew') 
Kısa adı (kalıcı bağlantılarda kullanılan ad)"beef-stew" olan sayfa görüntülendiğinde.
is_single(array(17,'beef-stew','Irish Stew')) 
ID'si 17 veya kısa adı "beef-stew" veya yazı başlığı "Irish Stew" olan yazı görüntülendiğinde. Not: dizi özelliği Version 2.5 sürümünde eklendi.

Yapışkan Yazı

is_sticky() 
Görüntülenen yazı yazılırken eğer "Bu yazıyı ana sayfada sabitle" seçeneği seçilmişse. Eğer parametre olarak herhangi bir yazı ID'si verilmezse Loop döngüsü içerisende etkin yazı ID'sini kullanır. Not: bu etiket Version 2.7 sürümünde eklenmiştir.
is_sticky('17') 
ID'si 17 olan yazı eğer yapışkan bir yazıysa true değeri döner.

Yorum Popup Pencere

is_comments_popup() 
Yorumlar popup pencerede gösteriliyorsa

Yazı İçeren Herhangi Bir Sayfada

comments_open()
WordPress Loop döngüsü içerisinde etkin yazıda yorumlara izin verilmişse.
pings_open()
WordPress Loop döngüsü içerisinde etkin yazıda ping atmaya izin verilmişse.

Sayfa

Bu bölüm Sayfalar ile ilgilidir, sitenizde üretilen diğer yazılar için değildir.

is_page() 
Herhangi bir Sayfa görüntülendiğinde.
is_page('42') 
ID'si 42 olan Sayfa görüntülendiğinde
is_page('About Me And Joe') 
Başlığı (post_title) "About Me And Joe" olan Sayfa görüntülendiğinde.
is_page('about-me') 
Kısa adı (post_name) "about-me" olan Sayfa görüntülendiğinde.
is_page(array(42,'about-me','About Me And Joe')) 
ID'si 42 veya kısa adı (post_name) "about-me" olan veya yazı başlığı (post_title) "About Me And Joe" olan Sayfa görüntülendiğinde. Not: dizi değişken alma özelliği Version 2.5 sürümünde eklendi.

Alt Sayfa Testi

Henüz is_subpage() fonksiyonu tanımlanmış değil ancak aşağıdaki küçük kod ile bu testi yapabilirsiniz:

<?php
// Kodu bir fonksiyon içerisinde kullanıyorsanız
//$post değişkenini global olarak alınız.
global $post;

if ( is_page() && $post->post_parent ) {
    // Bu bir alt sayfa

} else {
    // Alt sayfa değil
}
?>

Bu fonksiyonu temanızın Tema fonksiyonları (functions.php) dosyasına ekleyebilirsiniz:

Bu bölüm Türkçeleştirilecek

function is_tree($pid) {    // $pid = The page we're looking for pages underneath
	global $post;       // We load this as we're outside of the post
	if(is_page()&&($post->post_parent==$pid||is_page($pid))) return true; // Yes, it's in the tree
	else return false;  // No, it's outside
};

and call is_tree('id') to see if the page is in the tree. In the example below is_tree('2') would replace "is_page('about') || $post->post_parent == '2'" inside the first if tag. Note that if you have more than one level of pages the parent page is the one directly above and not the one at the top of the tree.

If you need to test whether this is a particular page OR a child of that page (e.g. to present a different banner on different sections of a page-based site), get the parent page IDs from the back-end, then use code like this:

<?php

if ( is_page('about') || $post->post_parent == '2' ) { 
    $bannerimg = 'home.jpg';

} elseif ( is_page('learning') || $post->post_parent == '56' ) {	
    $bannerimg = 'teaching.jpg';

} elseif ( is_page('admissions') || $post->post_parent == '15' ) { 
    $bannerimg = 'admissions.jpg';

} else { 
    $bannerimg = 'home.jpg'; // Fall-through  
}	

?>

If you wish to test this numerous times it is advisable to create a function (is_cpage()) which can easily be maintained. For example, if is_subpage() is introduced in to wp, you can change your function in functions.php without having to change multiple uses.

Sayfa Şablonu mu?

Version 2.5 sürümü ile birlikte sayfanın bir şablon kullanıp, kullanılmadığını kontrol etmeye izin verilmiştir.

is_page_template() 
Bir Sayfa Şablonu kullanılmış mı?
is_page_template('about.php') 
'about.php' adında bir Sayfa Şablonu kullanılmış mı? Not: Eğer belli bir sayfa şablonunun kullanılıp, kullanılmadığını öğrenmek istiyorsanız, şablonun dosya adını parametre olarak girmelisiniz.

Kategori Sayfası

is_category() 
Herhangi bir kategoriye ait yazılar (kategori arşivi) görüntülendiğinde.
is_category('9') 
ID'si 9 olan kategorinin yazıları görüntülendiğinde.
is_category('Stinky Cheeses') 
Adı "Stinky Cheeses" olan kategorinin yazıları görüntülendiğinde.
is_category('blue-cheese') 
Kısa adı "blue-cheese" olan kategorinin yazıları görüntülendiğinde.
is_category(array(9,'blue-cheese','Stinky Cheeses')) 
ID'si 9 veya kısa adı "blue-cheese" veya adı "Stinky Cheeses" olan kategorilerden birisinin yazıları görüntülendiğinde. Not: dizi değişken özelliği Version 2.5 sürümünde eklendi.
in_category('5') 
Görüntülenen yazı ID'si 5 olan bir kategoriye aitse. read more

Note: Fonksiyonları yazarken "is" ve "in" arasında büyük fark olduğunu unutmayın.

Ayrıca bkz. is_archive() and Category Templates.

Etiket Sayfası

is_tag() 
Herhangi bir etiketin yazıları görüntülendiğinde.
is_tag('mild') 
Kısa adı 'mild' olan etiketin yazıları görüntülendiğinde.
is_tag(array('sharp','mild','extreme')) 
Kısa adı "sharp", "mild" veya "extreme" olan etiketlerden birinin yazıları görüntülendiğinde. Not: dizi değişken özelliği Version 2.5 sürümünde eklendi.
has_tag() 
Yazıya ait etiket olduğunda. Loop döngüsü içerisinde kullanılmaladır. Not: has_tag Version 2.6 sürümünde eklendi.
has_tag('mild') 
Yazı 'mild' etiketine sahipse.
has_tag(array('sharp','mild','extreme')) 
Yazı dizi içerisindeki etiketlerden birisine sahipse.

Ayrıca bkz. is_archive() ve Tag Templates.

Yazar Sayfası

is_author() 
Herhangi bir yazar sayfası görüntülendiğinde.
is_author('4') 
ID'si 4 olan yazarın sayfası görüntülendiğinde
is_author('Vivian') 
Kullanıcı adı "Vivian" olan yazarın sayfası görüntülendiğinde.
is_author('john-jones') 
Kısa adı "john-jones" olan yazarın sayfası görüntülendiğinde.
is_author(array(4,'john-jones','Vivian')) 
ID'si 4, kısa adı "john-jones" veya kullanıcı adı "Vivian" olan yazarın sayfası görüntülendiğinde. Not: dizi değişken özelliği Version 2.5 sürümünde eklendi.

Ayrıca bkz. is_archive() and Author Templates.

Tarih Arşivi

is_date() 
Herhangi bir tarih temelli arşiv sayfası görüntülendiğinde (Örn: aylık, yıllık, günlük ya da zaman temelli arşiv).
is_year() 
Bir yıla ait arşiv gösteriliyorsa.
is_month() 
Bir aya ait arşiv gösteriliyorsa.
is_day() 
Bir güne ait arşiv gösteriliyorsa.
is_time() 
Saaate, dakikaya ya da saniyeye ait bir arşiv gösteriliyorsa.

Ayrıca bkz. is_archive().

Herhangi Bir Arşiv

is_archive() 
Herhangi bir arşiv sayfası gösteriliyorsa. Kategori, Etiket, Yazar ve Tarih temelli bütün sayfalar Arşiv olarak değerlendirilirler.

Arama Sonuç Sayfası

is_search() 
Bir arama sonuç sayfası gösteriliyorsa.

404 - Bulunamadı Sayfası

is_404() 
"HTTP 404: Not Found" hatası olan bir sayfa görüntülendiğinde.

Sayfalanmış Bir Sayfa mı?

is_paged() 
Bir sayfa, sayfalanmış olarak görüntülendiğinde. Anasayfada ya da arşivlerde yazılar sayfalanmış olarak sunulurlar. Buradaki sayfalama <!--nextpage--> ile yapılan sayfalama değildir.

Bir Ek mi?

is_attachment() 
Yazı/Sayfaya eklenmiş bir belge/resim görüntülendiğinde. Ek, bir resim ya da yazı editörü ile siteye yüklenmiş olan herhangi bir dosya olabilir. Ekler kendi sayfalarında ya da bir şablonda görüntülenebilirler. Daha fazlası için bkz. Using Image and File Attachments.

Tekil Yazı, Tekil Sayfa ya da Eklenti

is_singular() 
Şu fonksiyonlardan birisi true değer döndürdüğünde: is_single(), is_page() veya is_attachment().

Besleme

is_feed() 
Sitede bir besleme isteğinde bulunulduğunda. Bu etiket kullanıcılardan çok WordPress içerisinde ve eklenti geliştiricileri için kullanılmaktadır.

Geri İzleme

is_trackback() 
Site WordPress'in Geri izleme motoruna bir istek gönderdiğinde. Bu etiket kullanıcılardan çok, WordPress'in kendi içerisinde ve eklenti geliştiricileri için kullanılabilirdir.

Önizleme Sayfası

is_preview() 
Tekil bir yazı Taslak modunda önizleme yapıldığında.

Özeti Var mı?

has_excerpt() 
Yazı bir özete sahipse.
has_excerpt('42') 
ID'si 42 olan yazı bir özete sahipse.
<?php
// Bir fonksiyonun içerisinde ise $post değişkenini al
global $post;

if ( empty($post->post_excerpt) ) {
    // Bu yazının özeti yok
} else {
    // Bu yazının özeti var
}
?>

Loop Döngüsü İçerisinde mi?

in_the_loop() 
Loop döngüsü içerisinde olup, olmadığınızı kontrol eder. Eklenti yazarları için, döngü içerisinde olup, olmadıklarını kontrol açısından faydalıdır.

Yan Menü Aktif mi?

is_active_sidebar() 
Verilen bir yan menünün aktif (kullanımda) olup, olmadığını kontrol eder. Bu koşul etiketi Version 2.8 birlikte kullanılabilir olacak.

Örnekler

Aşağıdaki örnekler koşul etiketlerinin nasıl kullanılabileceğini göstermektedir.

Tekil Yazı

Bu örnek tekil bir sayfa gösterildiğinde özel bir mesaj iletmek için is_single() etiketinin kullanımını gösterir:

if (is_single())
{
     echo 'Bu ' . single_cat_title() . ' kategorisindeki güzel yazılardan birisi!';
}

Tarih Temelli Farklılıklar

Eğer birisi sitemize tarihe dayalı olarak girmişse, farklı yıllardaki yazıları, farklı renklerle gösterelim:

<?php
// The Loop döngüsü başlıyor
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2 id="post-<?php the_ID(); ?>">
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>">
<?php the_title(); ?></a></h2>
<small><?php the_time('d F Y') ?> <!-- by <?php the_author() ?> --></small>

<?php
// tarih temelli arşiv mi gösteriyoruz?
if (is_date())
{
     if (date('Y') != get_the_date('Y'))
     {
          // bu tarih önceki bir yılda yazılmış
          // bu yüzden bu içeriği "oldentry" CSS sınıfnda gösterelim
          echo '<div class="oldentry">';
     } else {
          echo '<div class="entry">';
     }
} else {
     echo '<div class="entry">';
}
the_content('Devamı »'); 
?>
</div>

Değişken Yan Menü İçeriği

Bu örnek okuyucu farklı sayfaları incelerken yan menüde farklı içerik göstermeyi anlatır:

<!-- begin sidebar -->
<div id="sidebar">
<?php
// Görüntülenen sayfayla ilgili olarak kategorileri listeleyelim.
if (is_home()) {
        // Ana sayfadayız, ana kategorileri listeleyelim
        echo "<ul>";
        wp_list_categories('optionall=0&sort_column=name&list=1&children=0');
        echo "</ul>";
} elseif (is_category()) {
        // Bir kategori içeriğini görüntülüyoruz, bu yüzden bütün kategorileri gösterelim
         echo "<ul>";
        wp_list_categories('optionall=1&sort_column=name&list=1&children=1&hierarchical=1');
        echo "</ul>";
} elseif (is_single()) {
        // Tekil bir yazı görüntülüyoruz, bu yüzden yan menüde herhangi bir şey görüntüleyelim
} elseif (is_page()) {
        // Statik bir sayfa görüntülüyoruz, ama hangisi?
        if (is_page('About')) {
             // Hakkında sayfamızour about page.
             echo "<p>Bu hakkımda sayfam!</p>";
        } elseif (is_page('Portfolio')) {
             echo "<p>Bu Portfolio sayfam!</p>";
        } else {
              // Diğer bütün sayfalar
              echo "<p>Pedro için oy verin!</p>";
        }
} else {
        // Diğer herşey (arşivler, aramalar, 404 hata sayfaları, vs.)
        echo "<p>Merhaba siteme hoş geldiniz!</p>";
} // Hepsi bu!
?>
<form id="searchform" method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<div>
<input type="text" name="s" id="s" size="15" />
<input type="submit" value="<?php _e('Search'); ?>" />
</div>
</form>

</div>
<!-- end sidebar -->

404 Sayfa Yardımcısı

The Creating an Error 404 Page article has an example of using the PHP conditional function isset() in the Writing Friendly Messages section.

Dynamic Menu Highlighting

The Dynamic Menu Highlighting article discusses how to use the conditional tags to enable highlighting of the current page in a menu.

Conditional Tags Index

Aphabetical List I
Aphabetical List II

Function Reference

is_home(), is_front_page(), is_search(), is_404(), is_singular(), is_page(), is_attachment(), is_local_attachment(), is_single(), is_sticky(), is_archive(), is_category(), is_tag(), is_author(), is_date(), is_year(), is_month(), is_day(), is_time(), is_admin(), is_preview(), is_paged(), is_page_template(), is_plugin_page(), is_new_day(), is_feed(), is_trackback(), is_comments_popup(), comments_open(), pings_open(), is_taxonomy(), is_taxonomy_hierarchical()