WordPress, esnek yapısıyla dünya genelinde milyonlarca web sitesine güç veren lider içerik yönetim sistemidir. Başlangıçta blog platformu olarak ortaya çıksa da, zamanla her türlü web sitesi ihtiyacına cevap verebilecek bir ekosisteme dönüştü. Bu esnekliğin temel taşlarından biri, standart “Yazı” ve “Sayfa” yapılarının ötesine geçerek tamamen özelleştirilmiş içerik türleri oluşturma imkanı sunan Custom Post Type (Özel Yazı Türü) özelliğidir. Bu rehberde, Custom Post Type (CPT) kavramını A’dan Z’ye inceleyecek, neden önemli olduğunu anlatacak ve portföy, ürün gibi özel içerikleri sitenize nasıl ekleyebileceğinizi hem eklenti hem de kodlama yöntemleriyle adım adım göstereceğiz.
İçerik Tablosu
WordPress’te Varsayılan İçerik Yapısı
Her WordPress kurulumu, içeriği organize etmek için iki temel yapı taşıyla birlikte gelir. Bu yapılar, çoğu web sitesinin temel ihtiyaçlarını karşılamak üzere tasarlanmıştır, ancak projenizin kapsamı genişledikçe sınırlılıkları ortaya çıkabilir. Bu varsayılan yapıları anlamak, özel yazı türlerine neden ihtiyaç duyduğumuzu kavramak için ilk adımdır.
Temel İçerik Türleri: Yazılar (Posts) ve Sayfalar (Pages)
WordPress’in çekirdeğinde iki ana içerik türü bulunur: Yazılar (Posts) ve Sayfalar (Pages). Yazılar, genellikle zamana duyarlı, kronolojik olarak sıralanan ve blog gönderileri, haberler veya duyurular gibi dinamik içerikler için kullanılır. Kategoriler ve etiketler ile organize edilebilirler. Sayfalar ise “Hakkımızda”, “İletişim” gibi daha statik, hiyerarşik ve zamandan bağımsız içerikler için tasarlanmıştır. Sayfalar, kendi aralarında bir ana-alt sayfa ilişkisi kurabilir ancak kategori veya etiket almazlar.
Yazı ve Sayfaların Kullanım Amaçları ve Sınırlılıkları
Yazılar ve sayfalar, standart bir blog veya kurumsal web sitesi için oldukça işlevseldir. Ancak, bir emlak sitesi için “İlanlar”, bir sinema portalı için “Filmler” veya bir ajans sitesi için “Portföy” gibi özel veri setleri yönetmeniz gerektiğinde bu iki yapı yetersiz kalır. Örneğin, tüm portföy öğelerinizi “Yazı” olarak eklemek, blog yazılarınızla karışmalarına neden olur ve her birine “Proje Tarihi”, “Müşteri Adı” gibi standart dışı bilgiler eklemeyi zorlaştırır.
| Özellik | Yazılar (Posts) | Sayfalar (Pages) |
|---|---|---|
| Kullanım Amacı | Dinamik, zamana duyarlı içerikler (Blog, Haberler) | Statik, zamandan bağımsız içerikler (Hakkımızda, İletişim) |
| Sıralama | Ters kronolojik (en yeniden en eskiye) | Hiyerarşik (ana-alt sayfa ilişkisi) veya menü sırası |
| Sınıflandırma | Kategoriler ve Etiketler | Yok (sadece hiyerarşi) |
| Arşiv Sayfaları | Evet (Tarihe, kategoriye, etikete göre arşivlenir) | Hayır |
| URL Yapısı | Genellikle /blog/yazi-adi/ gibi | Genellikle /sayfa-adi/ gibi |
Standart İçerik Türleri Ne Zaman Yetersiz Kalır?
Web sitenizde birbirinden tamamen bağımsız ve farklı veri alanlarına sahip içerik grupları yönetmek istediğinizde standart türler yetersiz kalır. Bir “Yemek Tarifi” içeriği için “Hazırlama Süresi”, “Porsiyon Sayısı”, “Malzemeler” gibi alanlara ihtiyaç duyarken, bir “Kitap İncelemesi” için “Yazar”, “Yayın Evi”, “Sayfa Sayısı” gibi alanlara ihtiyaç duyarsınız. Bu iki farklı içeriği de “Yazı” olarak girmek, yönetim panelinde karmaşaya ve ön yüzde bu verileri standart bir şekilde sergilemede zorluklara yol açar. İşte bu noktada Custom Post Type’lar devreye girer.
Custom Post Type (CPT) Kavramı ve Önemi
WordPress’in esnekliğini bir üst seviyeye taşıyan Custom Post Type (CPT), içeriğinizi daha mantıksal ve yönetilebilir bir şekilde organize etmenizi sağlar. CPT’ler sayesinde, sitenizin amacına özel, tamamen bağımsız içerik bölümleri oluşturabilirsiniz. Bu, hem yönetici panelinin daha düzenli olmasını sağlar hem de geliştiricilere bu özel içerikleri sitede sergilemek için büyük bir özgürlük tanır.
Custom Post Type (Özel Yazı Türü) Nedir?
Custom Post Type, kelime anlamıyla “Özel Yazı Türü” demektir. WordPress’in standart “Yazı” ve “Sayfa” türlerine ek olarak, kendi ihtiyaçlarınıza göre oluşturduğunuz yeni içerik türleridir. Örneğin, bir “Portföy”, bir “Ürün”, bir “Etkinlik” veya bir “Referans” CPT’si oluşturduğunuzda, bunlar WordPress yönetim panelinizde “Yazılar” ve “Sayfalar” gibi kendi ayrı menülerine sahip olurlar. Bu sayede, portföy öğelerinizi blog yazılarınızdan tamamen ayrı bir şekilde yönetebilirsiniz.
CPT’lerin WordPress’e Sağladığı Esneklik ve Organizasyon Avantajları
CPT kullanmanın en büyük avantajları esneklik ve organizasyondur. Blog yazılarınız, kurumsal sayfalarınız ve portföy öğeleriniz birbirine karışmaz. Her içerik türünün kendi yönetim ekranı, kendi kategorileri (taksonomileri) ve kendi özel veri alanları (custom fields) olabilir. Bu yapı, özellikle büyük ve karmaşık sitelerde içerik yönetimini büyük ölçüde basitleştirir ve sitenizin gelecekte büyümesine olanak tanır.
CPT, Özel Alan (Custom Field) ve Özel Sınıflandırma (Custom Taxonomy) İlişkisi
Bu üç kavram genellikle birlikte kullanılır ve birbirini tamamlar. Aralarındaki ilişkiyi anlamak, CPT’lerin gücünü tam olarak kavramak için kritiktir.
- Custom Post Type (CPT): İçeriğin ana iskeletidir. “Film” adında bir CPT, tüm filmlerinizi barındıran ana kapsayıcıdır.
- Custom Field (Özel Alan): CPT’ye ait meta verileridir. “Film” CPT’si için “Yönetmen”, “Süre”, “IMDb Puanı” gibi alanlar özel alanlardır.
- Custom Taxonomy (Özel Sınıflandırma): CPT’leri gruplamak için kullanılır. “Film” CPT’si için “Tür” (Dram, Komedi, Bilim Kurgu) veya “Yapım Yılı” gibi sınıflandırmalar özel taksonomilerdir.
Custom Post Type Oluşturma Yöntemleri
WordPress’te özel yazı türü oluşturmanın temel olarak iki popüler yolu vardır: kullanıcı dostu bir eklenti kullanmak veya temanızın `functions.php` dosyasına kod eklemek. Her iki yöntemin de kendine özgü avantajları ve dezavantajları bulunur. Projenizin gereksinimlerine ve teknik bilginize göre en uygun olanı seçebilirsiniz.
Yöntem 1: Eklenti Kullanarak CPT Oluşturma
Kodlama bilgisi olmayan veya hızlı bir şekilde CPT oluşturmak isteyen kullanıcılar için en ideal yöntem eklenti kullanmaktır. Bu eklentiler, bir arayüz üzerinden gerekli tüm ayarları yapmanıza olanak tanır ve sizi kod yazma zahmetinden kurtarır.
Popüler CPT Eklentileri: Custom Post Type UI (CPT UI)
Piyasadaki en popüler ve yaygın olarak kullanılan eklentilerden biri Custom Post Type UI (CPT UI)‘dır. Hem özel yazı türleri (CPT) hem de özel sınıflandırmalar (taksonomiler) oluşturmak için kapsamlı bir arayüz sunar. Kurulumu ve kullanımı oldukça basittir.
Adım Adım CPT UI Eklentisi ile Yeni Bir Yazı Türü Kaydetme
CPT UI eklentisini kurup etkinleştirdikten sonra, WordPress yönetim panelinizin sol menüsünde “CPT UI” adında yeni bir sekme belirir.
- CPT UI > Add/Edit Post Types menüsüne gidin.
- Post Type Slug: Yazı türünüz için benzersiz, küçük harflerle ve boşluksuz bir kimlik belirleyin (örn: “portfoy”). Bu kimlik, URL yapısında ve kodlamada kullanılacaktır.
- Plural Label: Yazı türünün çoğul adını girin (örn: “Portföyler”).
- Singular Label: Yazı türünün tekil adını girin (örn: “Portföy”).
- “Add Post Type” butonuna tıklayarak CPT’nizi kaydedin. Bu işlemden sonra sol menüde “Portföyler” adında yeni bir menü göreceksiniz.
Eklenti Ayarları: Genel Ayarlar, Etiketler ve Gelişmiş Seçenekler
CPT UI, temel ayarların ötesinde birçok gelişmiş seçenek sunar. “Edit Post Types” sekmesinden oluşturduğunuz CPT’yi seçerek bu ayarlara ulaşabilirsiniz. “Labels” bölümünden yönetim panelinde görünecek tüm etiketleri (“Yeni Ekle”, “Öğeyi Düzenle” vb.) özelleştirebilirsiniz. “Settings” bölümünden ise yazı türünün herkese açık olup olmayacağını (`public`), arşiv sayfasının olup olmayacağını (`has_archive`), hangi özellikleri destekleyeceğini (`supports` – başlık, içerik editörü, öne çıkan görsel vb.) ve menü ikonunu (`menu_icon`) belirleyebilirsiniz.
Yöntem 2: Kod Yazarak CPT Oluşturma (functions.php)
Eğer bir tema geliştiriyorsanız veya sitenize daha az eklenti kurarak performansı optimize etmek istiyorsanız, CPT’leri kod ile oluşturmak en doğru yöntemdir. Bu işlem, temanızın `functions.php` dosyasına veya kendi özel eklentinize ekleyeceğiniz bir PHP fonksiyonu ile yapılır.
`register_post_type()` Fonksiyonu Nedir ve Nasıl Çalışır?
WordPress, özel yazı türlerini sisteme kaydetmek için `register_post_type()` adında bir çekirdek fonksiyon sunar. Bu fonksiyon, iki ana parametre alır: birincisi CPT’nin benzersiz kimliği (slug), ikincisi ise CPT’nin tüm ayarlarını ve etiketlerini içeren bir dizi (array) değişkendir. Bu fonksiyon, genellikle `init` eylemi (action hook) içine yerleştirilerek WordPress başlatılırken çalıştırılır.
Temel Fonksiyon Parametreleri (`labels`, `public`, `has_archive`, `supports`, `menu_icon`)
- labels: Yönetim panelinde görünecek metinleri (Yeni Ekle, Düzenle, vb.) içeren bir dizidir.
- public: Yazı türünün panelde ve site ön yüzünde görünür olup olmadığını belirleyen bir mantıksal (boolean) değerdir. Genellikle `true` olarak ayarlanır.
- has_archive: Bu yazı türü için bir arşiv sayfası oluşturulup oluşturulmayacağını belirtir. Örneğin, `site.com/portfoy/` gibi bir sayfa istiyorsanız `true` olmalıdır.
- supports: CPT’nin hangi WordPress özelliklerini kullanacağını belirtir. ‘title’ (başlık), ‘editor’ (içerik alanı), ‘thumbnail’ (öne çıkan görsel), ‘custom-fields’ (özel alanlar) gibi değerler alabilir.
- menu_icon: Yönetim panelindeki menüde gösterilecek ikonun adıdır. WordPress Dashicons kütüphanesinden bir ikon seçilebilir.
Örnek Kod Bloğu ve functions.php Dosyasına Entegrasyonu
Aşağıda, “Portföy” adında bir CPT oluşturan temel bir kod bloğu bulunmaktadır. Bu kodu, kullandığınız temanın `functions.php` dosyasının en altına ekleyebilirsiniz.
Önemli Not: `functions.php` dosyasında yapacağınız bir hata sitenizin çökmesine neden olabilir. Bu dosyayı düzenlemeden önce mutlaka bir yedeğini alın. Ayrıca, tema güncellemelerinde bu kodun kaybolmaması için Child Theme (Alt Tema) kullanmanız şiddetle tavsiye edilir.
function ihs_portfolio_cpt_olustur() {
$labels = array(
'name' => 'Portföyler',
'singular_name' => 'Portföy',
'menu_name' => 'Portföyler',
'add_new_item' => 'Yeni Portföy Ekle',
'add_new' => 'Yeni Ekle',
'edit_item' => 'Portföyü Düzenle',
'view_item' => 'Portföyü Görüntüle',
'all_items' => 'Tüm Portföyler',
'search_items' => 'Portföy Ara',
'not_found' => 'Portföy bulunamadı.',
);
$args = array(
'labels' => $labels,
'public' => true,
'has_archive' => true,
'supports' => array( 'title', 'editor', 'thumbnail' ),
'menu_icon' => 'dashicons-portfolio',
'rewrite' => array( 'slug' => 'portfoy' ),
);
register_post_type( 'portfoy', $args );
}
add_action( 'init', 'ihs_portfolio_cpt_olustur' );
Özel İçerik Türlerini Zenginleştirme: Özel Alanlar ve Sınıflandırmalar
Custom Post Type oluşturmak, içeriğinizi organize etmenin ilk adımıdır. Ancak bu yapıları gerçekten güçlü ve işlevsel kılan, onlara özel veri alanları ve gruplama seçenekleri eklemektir. İşte bu noktada Custom Fields (Özel Alanlar) ve Custom Taxonomies (Özel Sınıflandırmalar) devreye girer.
Custom Fields (Özel Alanlar) Eklemek
Özel alanlar, standart başlık ve içerik editörü dışında, CPT’lerinize yapılandırılmış veri eklemenizi sağlar. Bu, veriyi hem girmeyi hem de daha sonra site ön yüzünde göstermeyi kolaylaştırır.
Özel Alanlar Nedir ve Neden İhtiyaç Duyulur?
Bir “Portföy” CPT’si düşünün. Her portföy öğesi için “Müşteri Adı”, “Proje Tamamlanma Tarihi” ve “Proje Web Sitesi” gibi bilgilere ihtiyacınız olacaktır. Bu bilgileri ana içerik alanına düz metin olarak yazmak yerine, her biri için ayrı bir özel alan oluşturmak çok daha mantıklıdır. Bu sayede bu verileri şablon dosyalarınızda kolayca çekebilir, filtreleyebilir ve istediğiniz tasarımda gösterebilirsiniz.
Advanced Custom Fields (ACF) Eklentisi ile CPT’lere Özel Alan Grupları Atama
WordPress’in kendi temel özel alanlar arayüzü olsa da, kullanımı pek pratik değildir. Advanced Custom Fields (ACF) eklentisi bu konuda endüstri standardı haline gelmiştir. ACF ile metin, sayı, tarih seçici, resim, dosya yükleme gibi onlarca farklı türde alanı görsel bir arayüzle oluşturabilir ve bu alan gruplarını istediğiniz CPT’ye atayabilirsiniz. Örneğin, bir “Alan Grubu” oluşturup içine “Müşteri Adı”, “Proje Tarihi” gibi alanları ekleyebilir ve bu grubun sadece “Portföy” yazı türünde gösterilmesini sağlayabilirsiniz.
Custom Taxonomies (Özel Sınıflandırmalar) Oluşturma
Özel sınıflandırmalar, CPT içeriklerinizi mantıksal gruplara ayırmanıza olanak tanır. Tıpkı blog yazılarını “Kategoriler” ve “Etiketler” ile grupladığımız gibi, CPT’lerinizi de kendi özel sınıflandırmalarınızla organize edebilirsiniz.
Özel Sınıflandırma Nedir? (Kategori ve Etiket Benzeri Yapılar)
Özel Sınıflandırma (Custom Taxonomy), özel yazı türlerinizi gruplamak için kullanılan bir yöntemdir. İki temel türü vardır:
- Hiyerarşik Taksonomiler: Tıpkı “Kategoriler” gibi ana-alt ilişki kurabilen yapılardır. Örneğin, bir “Ürün” CPT’si için “Giyim > Erkek > Gömlek” gibi bir yapı oluşturulabilir.
- Hiyerarşik Olmayan Taksonomiler: Tıpkı “Etiketler” gibi, bir hiyerarşiye sahip olmayan serbest etiketleme sistemidir. Örneğin, bir “Portföy” CPT’si için “Kullanılan Teknolojiler” taksonomisi “PHP, React, WordPress” gibi etiketler alabilir.
CPT UI Eklentisi ile Yeni Taksonomi Ekleme
Custom Post Type UI eklentisi, taksonomi oluşturmayı da son derece kolaylaştırır. “CPT UI > Add/Edit Taxonomies” menüsüne giderek yeni bir sınıflandırma oluşturabilirsiniz. Burada taksonominin kimliğini (slug), etiketlerini belirler ve en önemlisi, “Attach to Post Type” bölümünden hangi CPT ile ilişkilendirileceğini seçersiniz.
`register_taxonomy()` Fonksiyonu ile Kod Üzerinden Taksonomi Oluşturma
CPT’lerde olduğu gibi, taksonomileri de kod ile oluşturmak mümkündür. Bunun için WordPress’in `register_taxonomy()` fonksiyonu kullanılır. Bu fonksiyon üç ana parametre alır: taksonominin benzersiz kimliği, taksonominin hangi CPT’ye bağlanacağı ve ayarları içeren bir dizi (array).
function ihs_portfolio_taksonomi_olustur() {
$labels = array(
'name' => 'Hizmet Türleri',
'singular_name' => 'Hizmet Türü',
);
$args = array(
'labels' => $labels,
'hierarchical' => true, // Kategori tarzı (true) mı, etiket tarzı (false) mı?
'public' => true,
);
register_taxonomy( 'hizmet_turu', array( 'portfoy' ), $args );
}
add_action( 'init', 'ihs_portfolio_taksonomi_olustur' );
Yukarıdaki kod, “Portföy” yazı türüne bağlı, “Hizmet Türleri” adında hiyerarşik bir taksonomi oluşturur.
Uygulamalı Örnek 1: “Portföy” Custom Post Type Oluşturma
Teorik bilgileri pratiğe dökmek için bir ajans veya freelancer sitesi için “Portföy” CPT’si oluşturalım. Bu örnekte hem CPT’nin kendisini, hem de onu zenginleştirecek özel alanları ve sınıflandırmaları tanımlayacağız.
Portföy CPT’sini Kaydetme (Eklenti veya Kod ile)
İlk adım, “Portföy” adında bir CPT oluşturmaktır. Yukarıdaki bölümlerde gösterilen CPT UI eklentisi veya `register_post_type()` fonksiyonu ile `portfoy` slug’ına sahip bir CPT kaydedilir. Bu CPT’nin başlık (proje adı), içerik editörü (proje açıklaması) ve öne çıkan görsel (proje görseli) alanlarını desteklemesini sağlarız.
Gerekli Özel Alanları Belirleme: Müşteri Adı, Proje Tarihi, Proje URL’si
Portföy öğesine standart WordPress alanları dışında ek bilgiler girmek için özel alanlara ihtiyacımız var. ACF eklentisi kullanarak şu alanları oluşturabiliriz:
- Müşteri Adı: Basit bir metin alanı (Text).
- Proje Tarihi: Tarih seçici alanı (Date Picker).
- Proje URL’si: Bir URL alanı.
Bu alanları içeren alan grubunu oluşturduktan sonra, “Location” ayarlarından bu grubun sadece “Post Type is equal to portfoy” kuralıyla portföy CPT’sinde görünmesini sağlarız.
Özel Sınıflandırmaları Oluşturma: Hizmet Türü (Web Tasarım, SEO), Kullanılan Teknoloji
Portföy öğelerini filtrelemek ve gruplamak için iki farklı taksonomi oluşturalım:
- Hizmet Türü: Hiyerarşik bir taksonomi. Bu sayede kullanıcılar “Web Tasarım”, “SEO”, “Mobil Uygulama” gibi hizmetlere göre portföyü filtreleyebilir.
- Kullanılan Teknoloji: Hiyerarşik olmayan bir taksonomi. “WordPress”, “React”, “PHP”, “Laravel” gibi etiketlerle projenin teknik detaylarını belirtebiliriz.
Bu taksonomiler, CPT UI eklentisi veya `register_taxonomy()` fonksiyonu ile oluşturulup “Portföy” CPT’sine bağlanır.
Uygulamalı Örnek 2: “Ürün” Custom Post Type Oluşturma
Şimdi de bir WooCommerce gibi tam teşekküllü bir e-ticaret sistemi kullanmadan, sadece ürün listelemek ve tanıtmak amacıyla bir “Ürün” CPT’si oluşturalım. Bu, genellikle bir online katalog veya B2B siteleri için kullanışlı bir yapıdır.
Ürün CPT’sini Kaydetme (E-ticaret dışı listeleme amaçlı)
CPT UI veya kod kullanarak `urun` slug’ı ile yeni bir özel yazı türü oluşturuyoruz. Bu yazı türü; ürün adı için başlığı, ürün açıklaması için içerik editörünü ve ürün görseli için öne çıkan görseli desteklemelidir.
Gerekli Özel Alanları Belirleme: Fiyat, Stok Kodu (SKU), Renk
Ürünlere özel bilgileri girmek için ACF eklentisi ile şu alanları tanımlayabiliriz:
- Fiyat: Sayı alanı (Number), para birimi bilgisiyle birlikte.
- Stok Kodu (SKU): Benzersiz ürün kodunu girmek için bir metin alanı (Text).
- Renk: Seçenekler sunan bir seçim alanı (Select) veya renk paleti alanı (Color Picker).
Bu alan grubunu oluşturup sadece “Ürün” CPT’sinde görünecek şekilde ayarlıyoruz.
Özel Sınıflandırmaları Oluşturma: Ürün Kategorisi, Marka
Ürünleri organize etmek için iki temel taksonomiye ihtiyacımız olacak:
- Ürün Kategorisi: Ürünleri gruplamak için hiyerarşik bir taksonomi. Örneğin, “Elektronik > Telefonlar”.
- Marka: Ürünleri markalarına göre filtrelemek için hiyerarşik olmayan (veya isteğe bağlı olarak hiyerarşik) bir taksonomi.
Bu taksonomiler de oluşturulduktan sonra “Ürün” CPT’sine atanır. Artık yönetim panelinizde ürünlerinizi, blog yazılarınızdan ve diğer içeriklerden tamamen ayrı olarak, düzenli bir şekilde yönetebilirsiniz.
Oluşturulan CPT İçeriklerini Sitede Görüntüleme
Custom Post Type, özel alan ve taksonomileri oluşturmak işin sadece yarısıdır. Asıl önemli olan, bu yapılandırılmış veriyi ziyaretçilerinize anlamlı ve estetik bir şekilde sunmaktır. WordPress, tema yapısı sayesinde bu konuda da büyük esneklik sağlar.
WordPress Şablon Hiyerarşisi ve CPT’ler
WordPress, hangi içeriği hangi şablon dosyasıyla göstereceğine karar verirken Şablon Hiyerarşisi adı verilen bir kurallar dizisini takip eder. CPT’ler için özel şablon dosyaları oluşturarak, bu içeriklerin görünümünü sitenin diğer bölümlerinden tamamen farklılaştırabilirsiniz. WordPress, bir CPT’yi görüntülerken öncelikle o CPT’ye özel olarak oluşturulmuş dosyaları arar. Eğer bulamazsa, daha genel şablonlara (`archive.php`, `single.php`, `index.php`) geri döner.
CPT İçin Arşiv Sayfası Oluşturma: `archive-{cpt-adi}.php`
Tüm “Portföy” öğelerinizi listeleyeceğiniz bir sayfa oluşturmak için, tema dosyanızın içine `archive-portfoy.php` adında bir dosya oluşturmanız yeterlidir. (`portfoy` yerine kendi CPT’nizin slug’ını yazmalısınız). WordPress, `siteadiniz.com/portfoy/` URL’sini ziyaret ettiğinizde otomatik olarak bu dosyayı kullanacaktır. Bu dosyanın içine, standart WordPress döngüsü (The Loop) ile tüm portföy öğelerini çekip başlıklarını, öne çıkan görsellerini ve istediğiniz diğer özel alanları listeleyebilirsiniz.
CPT İçin Tekil İçerik Sayfası Oluşturma: `single-{cpt-adi}.php`
Tek bir portföy öğesinin detay sayfasını tasarlamak için ise `single-portfoy.php` adında bir dosya oluşturmanız gerekir. Ziyaretçi bir portföy öğesine tıkladığında WordPress bu şablonu yükler. Bu dosyanın içinde, o an görüntülenen portföy öğesine ait başlık, içerik, öne çıkan görsel gibi standart verilerin yanı sıra ACF ile oluşturduğunuz “Müşteri Adı”, “Proje Tarihi” gibi tüm özel alanları da `the_field()` gibi fonksiyonlarla çekip gösterebilirsiniz.
Sayfa Oluşturucular (Elementor, vb.) ile CPT İçeriklerini Dinamik Olarak Çekme
Eğer kodlama ile uğraşmak istemiyorsanız, Elementor Pro gibi gelişmiş sayfa oluşturucular da CPT içeriklerini görüntülemek için güçlü araçlar sunar. Bu araçların “Theme Builder” (Tema Oluşturucu) özelliklerini kullanarak, `archive-{cpt-adi}.php` ve `single-{cpt-adi}.php` dosyalarına karşılık gelen arşiv ve tekil içerik şablonlarını tamamen görsel bir arayüzle tasarlayabilirsiniz. Bu şablonlar içinde, dinamik etiketler (dynamic tags) sayesinde CPT’nizin başlık, içerik, öne çıkan görsel, özel alan ve özel taksonomi verilerini kolayca istediğiniz yere yerleştirebilirsiniz.
Custom Post Type Kullanan WordPress Siteleriniz İçin Neden İHS Telekom’u Tercih Etmelisiniz?
Custom Post Type, Özel Alanlar ve Taksonomiler, WordPress sitenize muazzam bir esneklik katarken, arka planda daha fazla veritabanı sorgusu anlamına gelebilir. Özellikle çok sayıda CPT içeriği ve karmaşık filtreleme özellikleri olan siteler, standart hosting çözümlerinde performans sorunları yaşayabilir. İşte bu noktada İHS Telekom’un sunduğu optimize edilmiş altyapı devreye girer.
Yüksek Performanslı ve Optimize Edilmiş WordPress Hosting Çözümleri
İHS Telekom, özel olarak yapılandırılmış wordpress hosting paketleri ile sitenizin hız ve performansını en üst düzeye çıkarır. Sunucularımız, CPT’lerin ve ACF gibi eklentilerin oluşturduğu veritabanı yükünü rahatça kaldırabilecek şekilde optimize edilmiştir. Bu sayede, ziyaretçileriniz CPT arşiv sayfalarınızda gezinirken veya filtreleme yaparken yavaşlama yaşamazlar.
Yoğun Veritabanı Sorguları İçin Gelişmiş Sunucu Altyapısı
CPT’ler, her sayfa yüklemesinde veritabanından özel veriler çeker. Site büyüdükçe bu sorguların sayısı artar. İHS Telekom’un güçlü sunucu altyapısı, NVMe SSD depolama ve gelişmiş önbellekleme teknolojileri sayesinde en yoğun veritabanı sorgularını bile anında işleyerek sitenizin daima hızlı kalmasını sağlar. İhtiyaçlarınız arttığında vps veya vds gibi daha güçlü çözümlere kolayca geçiş yapabilirsiniz.
Geliştirici Dostu Ortam ve Kolay Yönetim Paneli
Geliştiriciler için sunduğumuz SSH erişimi, WP-CLI desteği ve Git entegrasyonu gibi özellikler, CPT’lerinizi ve özel tema dosyalarınızı yönetmeyi kolaylaştırır. Kullanıcı dostu kontrol panelimiz üzerinden sitenizin tüm teknik detaylarını kolayca yönetebilir, veritabanı optimizasyonu gibi işlemleri tek tıkla yapabilirsiniz. Güvenli bir domain altyapısı ve sitenizin güvenliğini sağlayan ssl sertifikası hizmetlerimizle projeniz emin ellerde olur.
WordPress Uzmanı Teknik Destek ile Güvenli ve Kesintisiz Erişim
Karmaşık bir CPT yapısı kurarken veya performans optimizasyonu yaparken desteğe ihtiyaç duyabilirsiniz. İHS Telekom’un WordPress konusunda uzman teknik destek ekibi, karşılaşabileceğiniz her türlü sorunda size yardımcı olmak için 7/24 hazırdır. Sitenizin güvenli, hızlı ve kesintisiz bir şekilde yayında kalması için tüm altyapıyı biz yönetirken, siz sadece harika içerikler oluşturmaya odaklanabilirsiniz.
