Ortam dosyaları, WordPress medya yükleyicisi ile yüklenen dosyalardır ve bu dosyalar da bir içerik tipidir. İçerik Tipleri (Post Types), daha önceki derslerimizde açıklanmıştı. Yönetim panelinde, Ortam->Yeni ekle menüsünden veya bir içerik oluştururken, WordPress editörü ile yüklenebilirler. Bu dosyalar da, diğer içerik tipleri gibi, bir takım ek bilgiler ile kaydedilirler. Ortam dosyaları için hazırladığımız şablonlarda, bu bilgileri çekebiliriz. Hatta resimler için, resimde gömülü EXIF verilerini bile kullanılabilir.
Ortam dosyaları için, şablonlar hazırlarken aynı zamanda bu dosyalar ile ilgili çeşitli meta dataları da girmiş oluyoruz. Bu durum, SEO performansını da arttıracaktır.
Daha önce, Şablon Hiyerarşisi dersimizde bahsettiğimiz gibi, ortam dosyalarınız için oluşturabileceğiniz bir çok şablon dosyası vardır. Bu dosyaların hiyerarşik sırası şöyledir:
MIME_tipi.php
veyauzantisi.php
şeklinde, MIME tipine göre bir dosya hazırlayabilirsiniz (image.php
,video.php
,application.php
).
text/plain, dosyaları için-sırasıyla:text_plain.php
plain.php
text.php
attachment.php
single-attachment.php
single.php
singular.php
index.php
MIME_tipi.php
Ortam dosyaları için, şablon hazırlarken, bu dosyaların MIME tiplerini referans alabiliriz ve şablon dosyalarının isimlerini bu MIME tiplerine göre verebiliriz. Mesela, bütün resim (image) dosyalarınız için, image.php
adında bir şablon hazırlamanız yeterlidir. WordPress bu dosyayı, imege/* türünden bütün içeriklerimiz için, şablon olarak kullanacaktır.
Ortam dosyaları için, aynı zamanda, uznatı tiplerine göre de şablonlar hazırlanabilir. Mesela uzantı tipi png olan, bütün resim dosyalarınız için, png.php
adında bir şablon hazırlayabilirsiniz.
Attachment.php
Bütün ortam dosyalırınız için tek bir şablon hazırlamak istiyorsanız, dosyanız attachment.php
olmalıdır. Aslında bu dosya da, tek bir içeriği sunmak için kullanıldığından, single.php
dosyasına benzer. Aşağıda örnek bir attachment.php
şablonu verilmiştir:
<div class="entry-attachment">
<?php $image_size = apply_filters( 'wporg_attachment_size', 'large' );
echo wp_get_attachment_image( get_the_ID(), $image_size ); ?>
<!-- ortam dosyasının alternatif metni varsa -->
<?php if ( has_excerpt() ) : ?>
<div class="entry-caption">
<?php the_excerpt(); ?>
</div><!-- .entry-caption -->
<?php endif; ?>
</div><!-- .entry-attachment -->
get_attachment_template()
fonksiyonu, yavru veya ana temadaki, ortam dosyası şablonunun, yolunu döndürür.
1 yorum: “3.3 Ortam Dosyaları (Attachment) İçin Şablonlar”