WordPress, içerik yönetimi sistemleri arasında en popüler olanlarından biridir. Kullanıcı dostu arayüzü ve genişletilebilir yapısıyla, hem blog yazarları hem de işletmeler için ideal bir platform sunar. Ancak, bazen varsayılan yazı türleri (yazılar ve sayfalar) ihtiyaçları karşılamakta yetersiz kalabilir. İşte bu noktada özel yazı türleri devreye girer. Bu makalede, WordPress’te özel yazı türleri oluşturmanın adımlarını detaylı bir şekilde inceleyeceğiz.
1. Özel Yazı Türleri Nedir?
Özel yazı türleri, WordPress’in varsayılan yazı ve sayfa türleri dışında kalan, belirli içerik türlerini yönetmek için kullanılan özelleştirilebilir içerik türleridir. Örneğin, “etkinlikler”, “ürünler” veya “portföy” gibi özel içerik türleri oluşturabilirsiniz. Bu türler, içerik yapınızı daha düzenli hale getirir ve kullanıcı deneyimini artırır.
2. Özel Yazı Türü Oluşturma Yöntemleri
2.1. Eklenti Kullanarak Özel Yazı Türü Oluşturma
En kolay yol, özel yazı türleri oluşturmanıza olanak tanıyan bir eklenti kullanmaktır. Custom Post Type UI gibi popüler eklentiler, kullanıcı dostu bir arayüz ile özel yazı türleri oluşturmanızı sağlar.
Adım 1: Eklentiyi Yükleme
- WordPress Yönetici Paneline Giriş:
yourdomain.com/wp-admin
adresine gidin. - Eklentiler > Yeni Ekle: “Eklentiler” sekmesine tıklayın ve “Yeni Ekle” seçeneğine gidin.
- Custom Post Type UI Arama: Arama çubuğuna “Custom Post Type UI” yazın ve eklentiyi yükleyin.
- Aktifleştir: Yükledikten sonra “Aktifleştir” butonuna tıklayın.
Adım 2: Özel Yazı Türü Oluşturma
- CPT UI Menüsü: WordPress panelinde “CPT UI” sekmesine gidin.
- Add/Edit Post Types: “Add/Edit Post Types” seçeneğine tıklayın.
- Gerekli Bilgileri Doldurun:
- Post Type Slug: Özel yazı türünün adını (örneğin, “etkinlik”) yazın.
- Plural Label: Çoğul etiketini girin (örneğin, “Etkinlikler”).
- Singular Label: Tekil etiketini girin (örneğin, “Etkinlik”).
- Ayarları Yapılandırın: İhtiyaçlarınıza göre diğer ayarları yapılandırın (örneğin, “Yorumlar”, “Özellikler” vb.).
- Kaydet: “Add Post Type” butonuna tıklayarak yeni yazı türünüzü oluşturun.
2.2. Kod Kullanarak Özel Yazı Türü Oluşturma
Eğer biraz daha teknik bilgiye sahipseniz, özel yazı türlerini kod kullanarak oluşturabilirsiniz. Bunun için, tema dosyalarınızdan birine veya özel bir eklentiye aşağıdaki kodu ekleyebilirsiniz.
phpKodu kopyalafunction create_post_type() {
register_post_type('etkinlik',
array(
'labels' => array(
'name' => __('Etkinlikler'),
'singular_name' => __('Etkinlik')
),
'public' => true,
'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'comments'),
'rewrite' => array('slug' => 'etkinlikler'),
)
);
}
add_action('init', 'create_post_type');
Açıklama:
register_post_type
: Yeni yazı türünü tanımlamak için kullanılır.labels
: Yazı türü için gösterilecek adları içerir.public
: Yazı türünün halka açık olup olmadığını belirtir.has_archive
: Arşiv sayfasının olup olmayacağını belirtir.supports
: Hangi özelliklerin destekleneceğini tanımlar (başlık, içerik, öne çıkan resim vb.).rewrite
: URL yapısını belirler.
3. Özel Yazı Türlerine Kategori ve Etiket Eklemek
Özel yazı türleri oluşturduktan sonra, bunlara kategori ve etiket eklemek isteyebilirsiniz. Bunun için aşağıdaki kodu kullanabilirsiniz.
phpKodu kopyalafunction etkinlik_taxonomies() {
register_taxonomy(
'etkinlik_kategori',
'etkinlik',
array(
'label' => __('Kategori'),
'rewrite' => array('slug' => 'etkinlik-kategori'),
'hierarchical' => true,
)
);
}
add_action('init', 'etkinlik_taxonomies');
Açıklama:
register_taxonomy
: Yeni bir taksonomi (kategori veya etiket) oluşturmak için kullanılır.hierarchical
: Kategorilerin hiyerarşik olup olmadığını belirtir.
4. Özel Yazı Türlerini Yönetme
Özel yazı türünüzü oluşturduktan sonra, WordPress yönetici panelinizde “Etkinlikler” veya tanımladığınız isimle yeni bir menü seçeneği göreceksiniz. Buradan özel yazı türünüze yeni içerikler ekleyebilir, düzenleyebilir veya silebilirsiniz.
5. Özel Yazı Türlerini Temaya Entegre Etme
Özel yazı türlerinizi WordPress temanıza entegre etmek için birkaç adım izlemeniz gerekir. Yazı türünüzün şablon dosyalarını oluşturmalısınız.
5.1. Şablon Dosyaları Oluşturma
- Tema Klasörüne Gidin:
wp-content/themes/your-theme/
dizinine gidin. - Yeni Dosyalar Oluşturun:
single-etkinlik.php
: Tekil etkinlik görüntüleme sayfası için.archive-etkinlik.php
: Etkinliklerin listelendiği arşiv sayfası için.
5.2. Örnek Şablon Kodu
single-etkinlik.php
dosyasının içeriği:
phpKodu kopyala<?php get_header(); ?>
<div class="etkinlik-detay">
<?php while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<div><?php the_content(); ?></div>
<?php endwhile; ?>
</div>
<?php get_footer(); ?>
archive-etkinlik.php
dosyasının içeriği:
phpKodu kopyala<?php get_header(); ?>
<div class="etkinlik-listesi">
<h1>Etkinlikler</h1>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php endwhile; endif; ?>
</div>
<?php get_footer(); ?>
6. Özel Yazı Türlerini Geliştirme
Özel yazı türleri oluşturduktan sonra, kullanıcı deneyimini artırmak için bazı geliştirmeler yapabilirsiniz:
6.1. Özel Alanlar
Özel alanlar ekleyerek, yazı türünüzle ilgili daha fazla bilgi toplayabilirsiniz. Örneğin, bir etkinliğin tarihi veya yeri gibi bilgileri özel alanlar aracılığıyla ekleyebilirsiniz.
6.2. Kısa Kodlar
Kısa kodlar oluşturarak özel yazı türünüzü sayfalarınıza veya yazılarınıza kolayca ekleyebilirsiniz.
phpKodu kopyalafunction etkinlik_kisa_kod() {
$etkinlikler = new WP_Query(array('post_type' => 'etkinlik'));
ob_start();
if ($etkinlikler->have_posts()) {
while ($etkinlikler->have_posts()) {
$etkinlikler->the_post();
echo '<h2>' . get_the_title() . '</h2>';
}
}
return ob_get_clean();
}
add_shortcode('etkinlikler', 'etkinlik_kisa_kod');
6.3. Özelleştirilmiş URL Yapısı
Özel yazı türlerinizin URL yapısını özelleştirerek SEO performansınızı artırabilirsiniz.
7. Sonuç
WordPress’te özel yazı türleri oluşturmak, içerik yönetimini daha düzenli ve verimli hale getirir. İster eklenti kullanarak, ister kod ile özel yazı türleri oluşturun, bu yöntemle içeriklerinizi daha iyi organize edebilir ve kullanıcı deneyimini artırabilirsiniz. Özel yazı türlerinizi oluşturduktan sonra, şablon dosyalarını ve diğer özellikleri entegre ederek web sitenizi kişiselleştirebilir ve zenginleştirebilirsiniz. Bu süreç, web sitenizin