WordPress’te özel gönderi türlerinin nasıl kolayca oluşturulacağını öğrenmek ister misiniz? Özel gönderi türleri, bir WordPress sitesini bir blog platformundan güçlü bir İçerik Yönetim Sistemine (CMS) dönüştürür.
Temel olarak, web siteniz için farklı içerik türleri oluşturarak yazıların ve sayfaların ötesine geçmenize izin verir.
Bu makalede, WordPress’te özel gönderi türlerini nasıl kolayca oluşturacağınızı göstereceğiz. Size iki yöntem öğreteceğiz ve size daha kolay görünen birini seçebilirsiniz.
WordPress’te Özel Gönderi Türü nedir?
Özel gönderi türleri, gönderiler ve sayfalar gibi içerik türleridir. WordPress basit bir blog platformundan sağlam bir CMS’ye dönüştüğü için, gönderi terimi ona bağlı kaldı. Bununla birlikte, bir gönderi türü herhangi bir içerik türü olabilir.
Varsayılan olarak, WordPress şu gönderi türleriyle birlikte gelir:
Kendi özel gönderi türlerinizi oluşturabilir ve istediğiniz gibi adlandırabilirsiniz.
Örneğin, bir film inceleme web sitesi çalıştırıyorsanız, muhtemelen bir film inceleme yazı türü oluşturmak istersiniz. Bu gönderi türünün farklı özel alanları ve hatta kendi özel kategori yapısı olabilir.
Diğer gönderi türü örnekleri Portföy, Görüşler, Ürünler vb.
Birçok popüler WordPress eklentisi, WordPress web sitenizde veri depolamak için zaten özel gönderi türleri kullanıyor. Aşağıdakiler, özel gönderi türlerini kullanan en iyi birkaç eklentidir.
WooCommerce – WordPress sitenize bir ürün özel gönderi türü ekler.Özel bir gönderi türüne ne zaman ihtiyacım var?
WordPress’te özel gönderi türlerine veya sınıflandırmalara gerçekten ne zaman ihtiyacınız olduğuna ilişkin makalemize bakın.
Ayrıca Kreatif Ajans’ın Fırsatlar ve Sözlük bölümlerine de göz atın. Bunlar, bu bölümleri günlük blog makalelerimizden ayrı tutmak için oluşturduğumuz özel gönderi türleridir. Web sitesi içeriğimizi daha iyi düzenlememize yardımcı olur.
Ayrıca, kategoriler veya etiketler yerine onlar için özel sınıflandırmalar kullandığımızı da fark edeceksiniz.
Bununla birlikte, kendi kullanımınız için WordPress’te özel gönderi türlerini nasıl kolayca oluşturacağınıza bir göz atalım.
Yöntem 1. Özel Yazı Türü Oluşturma – Kolay Yol
WordPress’te özel bir gönderi türü oluşturmanın en kolay yolu bir eklenti kullanmaktır. Bu yöntem yeni başlayanlar için önerilir çünkü güvenli ve süper kolaydır.
Yapmanız gereken ilk şey, Custom Post Type UI eklentisini kurmak ve etkinleştirmektir. Etkinleştirmenin ardından eklenti, WordPress yönetici menünüze CPT UI adlı yeni bir menü öğesi ekleyecektir.
Şimdi yeni bir özel gönderi türü oluşturmak için CPT UI »Yeni Ekle’ye gidin.
Öncelikle, özel gönderi türünüz için bir bilgi sağlamanız gerekir. Bu sülük sadece harfler ve rakamlar içerebilir, böylece URL’de ve WordPress sorgularda kullanılacaktır.
Bunun altında, özel gönderi türünüz için çoğul ve tekil isimleri sağlamanız gerekir.
Ardından, isteğe bağlı olarak ‘Seçili etiketlere göre ek etiketleri doldur’ yazan bağlantıyı tıklayabilirsiniz. Bunu yapmak, aşağıdaki etiket alanlarının geri kalanını dolduracaktır.
‘Ek Etiketler’ bölümüne gidin ve buradan gönderi türünüz için bir açıklama girebilir ve etiketleri değiştirebilirsiniz.
Söz konusu gönderi türündeki içeriği yönetirken etiketler, WordPress kullanıcı arayüzünün tamamında kullanılacaktır.
Ardından, gönderi türü ayarları seçeneği geliyor. Buradan, gönderi türünüz için farklı öznitelikler ayarlayabilirsiniz. Her seçenek, ne yaptığını açıklayan kısa bir açıklama ile birlikte gelir.
Örneğin, bir gönderi türünü sayfalar gibi hiyerarşik yapmamayı veya kronolojik benzeri gönderileri ters çevirmemeyi seçebilirsiniz.
Genel ayarların altında, bu yazı türünün hangi düzenleme özelliklerini destekleyeceğini seçme seçeneğini göreceksiniz. Dahil edilmesini istediğiniz seçenekleri işaretlemeniz yeterlidir.
Son olarak, özel gönderi türünüzü kaydetmek ve oluşturmak için ‘Gönderi Türü Ekle’ düğmesine tıklayın.
Hepsi bu, özel gönderi türünüzü başarıyla oluşturdunuz. Devam edebilir ve içerik eklemeye başlayabilirsiniz.
Bu makalenin ilerleyen bölümlerinde size özel gönderi türünüzü web sitenizde nasıl görüntüleyeceğinizi göstereceğiz.
Manuel Olarak Özel Yazı Tipi Oluşturma
Bir eklenti kullanmanın sorunu, eklenti devre dışı bırakıldığında özel gönderi türlerinizin kaybolmasıdır. Bu özel gönderi türlerinde sahip olduğunuz tüm veriler yine de orada olacaktır, ancak özel gönderi türünüz kaydedilmeyecek ve yönetici alanından erişilemeyecektir.
Bir istemci sitesinde çalışıyorsanız ve başka bir eklenti kurmak istemiyorsanız, temanızın functions.php dosyasına veya siteye özgü bir eklentiye gerekli kodu ekleyerek özel gönderi türünüzü manuel olarak oluşturabilirsiniz (Bkz: Özel Gönderi Türler Tartışma functions.php veya Eklenti).
İlk olarak, nasıl çalıştığını anlamanız için size hızlı ve tam olarak çalışan bir örnek göstereceğiz. Şu koda bir göz atın:
// Our custom post type function function create_posttype() { register_post_type( 'movies', // CPT Options array( 'labels' => array( 'name' => __( 'Movies' ), 'singular_name' => __( 'Movie' ) ), 'public' => true, 'has_archive' => true, 'rewrite' => array('slug' => 'movies'), 'show_in_rest' => true, ) ); } // Hooking up our function to theme setup add_action( 'init', 'create_posttype' );
Bu kodun yaptığı şey, bir dizi argümanla bir post tipi 'movies'
kaydetmesidir. Bu argümanlar, özel gönderi tipimizin seçenekleridir.
Bu dizinin iki bölümü vardır, ilk bölüm etiketlidir ve bu da bir dizidir. İkinci bölüm, genel görünürlük gibi diğer argümanları içerir, arşivi vardır, bilgiler içerir ve show_in_rest, blok düzenleyici desteğini etkinleştirir.
Şimdi, özel gönderi türünüze daha fazla seçenek ekleyen ayrıntılı bir kod parçasına bakalım.
/* * Creating a function to create our CPT */ function custom_post_type() { // Set UI labels for Custom Post Type $labels = array( 'name' => _x( 'Movies', 'Post Type General Name', 'twentytwenty' ), 'singular_name' => _x( 'Movie', 'Post Type Singular Name', 'twentytwenty' ), 'menu_name' => __( 'Movies', 'twentytwenty' ), 'parent_item_colon' => __( 'Parent Movie', 'twentytwenty' ), 'all_items' => __( 'All Movies', 'twentytwenty' ), 'view_item' => __( 'View Movie', 'twentytwenty' ), 'add_new_item' => __( 'Add New Movie', 'twentytwenty' ), 'add_new' => __( 'Add New', 'twentytwenty' ), 'edit_item' => __( 'Edit Movie', 'twentytwenty' ), 'update_item' => __( 'Update Movie', 'twentytwenty' ), 'search_items' => __( 'Search Movie', 'twentytwenty' ), 'not_found' => __( 'Not Found', 'twentytwenty' ), 'not_found_in_trash' => __( 'Not found in Trash', 'twentytwenty' ), ); // Set other options for Custom Post Type $args = array( 'label' => __( 'movies', 'twentytwenty' ), 'description' => __( 'Movie news and reviews', 'twentytwenty' ), 'labels' => $labels, // Features this CPT supports in Post Editor 'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisions', 'custom-fields', ), // You can associate this CPT with a taxonomy or custom taxonomy. 'taxonomies' => array( 'genres' ), /* A hierarchical CPT is like Pages and can have * Parent and child items. A non-hierarchical CPT * is like Posts. */ 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'show_in_admin_bar' => true, 'menu_position' => 5, 'can_export' => true, 'has_archive' => true, 'exclude_from_search' => false, 'publicly_queryable' => true, 'capability_type' => 'post', 'show_in_rest' => true, ); // Registering your Custom Post Type register_post_type( 'movies', $args ); } /* Hook into the 'init' action so that the function * Containing our post type registration is not * unnecessarily executed. */ add_action( 'init', 'custom_post_type', 0 );
Gördüğünüz gibi, bu kod ile özel gönderi türüne daha birçok seçenek ekledik. Revizyon desteği, öne çıkan görüntü, özel alanlar ve daha fazlası gibi daha fazla özellik ekleyecektir.
Ayrıca bu özel gönderi türünü, tür adı verilen özel bir sınıflandırma ile ilişkilendirdik.
Hiyerarşik değeri yanlış olarak ayarladığımız kısmı da fark edebilirsiniz. Özel gönderi türünüzün Sayfalar gibi davranmasını istiyorsanız, bu değeri true olarak ayarlayabilirsiniz.
Dikkat edilmesi gereken bir diğer husus da yirmi yirmi dizenin tekrar tekrar kullanılmasıdır, buna metin alanı denir. Temanız çeviriye hazırsa ve özel gönderi türlerinizin çevrilmesini istiyorsanız, temanız tarafından kullanılan metin alanından bahsetmeniz gerekir.
Temanızın metin alanını, tema dizininizdeki style.css
dosyasında bulabilirsiniz. Metin alanı dosyanın başlığında belirtilecektir.
Sitenizde Özel Gönderi Türlerini Görüntüleme
WordPress, özel gönderi türlerinizi görüntülemek için yerleşik destekle birlikte gelir. Yeni özel gönderi türünüze birkaç öğe ekledikten sonra, bunları web sitenizde gösterme zamanı gelmiştir.
Kullanabileceğiniz birkaç yöntem var, her birinin kendine göre faydaları var.
Varsayılan Arşiv Şablonunu Kullanarak Özel Yazı Tipini Görüntüleme
İlk olarak, Görünüm »Menüler’e gidip menünüze özel bir bağlantı ekleyebilirsiniz. Bu özel bağlantı, özel gönderi türünüzün bağlantısıdır.
SEO dostu kalıcı bağlantılar kullanıyorsanız, CPT’nizin URL’si büyük olasılıkla aşağıdaki gibi olacaktır:
http://example.com/movies
SEO dostu kalıcı bağlantılar kullanmıyorsanız, özel gönderi türü URL’niz şu şekilde olacaktır:
http://example.com/?post_type=movies
Example.com’u kendi alan adınızla ve filmleri özel yazı tipi adınızla değiştirmeyi unutmayın.
Menünüzü kaydedin ve ardından web sitenizin ön ucunu ziyaret edin. Eklediğiniz yeni menüyü göreceksiniz ve üzerine tıkladığınızda, temanızdaki archive.php şablon dosyasını kullanarak özel yazı tipi arşiv sayfanızı görüntüleyecektir.
CPT Arşivleri ve Tekli Girişler için Özel Şablonları Kullanma
Özel gönderi türünüz için arşiv sayfasının görünümünden hoşlanmıyorsanız, özel gönderi türü arşivi için özel şablon kullanabilirsiniz.
Bunu yapmak için tek yapmanız gereken, tema dizininizde yeni bir dosya oluşturmak ve bunu archive-movies.php
. Filmleri özel gönderi türünüzün adıyla değiştirin.
Başlamak için, temanızın archive.php
dosyasının içeriğini archive-movies.php
şablonuna archive-movies.php
ve ardından ihtiyaçlarınızı karşılayacak şekilde değiştirmeye başlayabilirsiniz.
Artık özel gönderi türünüz için arşiv sayfasına her erişildiğinde, bu şablon onu görüntülemek için kullanılacaktır.
Benzer şekilde, gönderi türünüzün tek girişli görüntüsü için özel bir şablon da oluşturabilirsiniz. Bunu yapmak için tema dizininizde single-movies.php
oluşturmanız gerekir. Filmleri özel gönderi türünüzün adıyla değiştirmeyi unutmayın.
Sen Temanızın içeriğini kopyalayarak başlayabilirsiniz single.php
içine şablonun single-movies.php
ihtiyaçlarınızı karşılayacak şekilde modifiye başlamak sonra şablonu ve.
Ön Sayfada Özel Yazı Tiplerini Görüntüleme
Özel gönderi türlerini kullanmanın bir avantajı, özel içerik türlerinizi normal gönderilerinizden uzak tutmasıdır. Bununla birlikte, normal gönderiniz arasında görüntülenmelerini istiyorsanız, bunu temanızın functions.php dosyasına veya siteye özgü bir eklentiye ekleyerek yapabilirsiniz:
add_action( 'pre_get_posts', 'add_my_post_types_to_query' ); function add_my_post_types_to_query( $query ) { if ( is_home() && $query->is_main_query() ) $query->set( 'post_type', array( 'post', 'movies' ) ); return $query; }
movies
özel yazı türünüzle değiştirmeyi unutmayın.
Özel Gönderi Türlerini Sorgulama
Kodlamaya aşina iseniz ve şablonlarınızda döngü sorguları çalıştırmak istiyorsanız, işte bunu nasıl yapacağınız (İlgili: Döngü nedir?).
Veritabanını sorgulayarak, öğeleri özel bir gönderi türünden alabilirsiniz.
<?php $args = array( 'post_type' => 'movies', 'posts_per_page' => 10 ); $the_query = new WP_Query( $args ); ?> <?php if ( $the_query->have_posts() ) : ?> <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <h2><?php the_title(); ?></h2> <div class="entry-content"> <?php the_content(); ?> </div> <?php endwhile; wp_reset_postdata(); ?> <?php else: ?> <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p> <?php endif; ?>
Bu kodda, ilk olarak, yeni WP_Query sınıfımız için argümanlarda sayfa başına gönderi türünü ve gönderileri tanımladık.
Bundan sonra, sorgumuzu çalıştırdık, gönderileri aldık ve döngü içinde görüntüledik.
Widget’larda Özel Yazı Tiplerini Görüntüleme
WordPress’te son gönderileri görüntülemek için varsayılan bir pencere öğesi olduğunu fark edeceksiniz, ancak özel bir gönderi türü seçmenize izin vermiyor.
Yeni oluşturduğunuz gönderi türünüzden en son girdileri bir pencere öğesinde görüntülemek isterseniz ne olur? Bunu yapmanın kolay bir yolu var.
Yapmanız gereken ilk şey, Ultimate Posts Widget eklentisini yüklemek ve etkinleştirmek. Etkinleştirdikten sonra, Görünüm »Widget’lara gidin ve Ultimate Posts widget’ını bir kenar çubuğuna sürükleyip bırakın.
Bu güçlü widget, herhangi bir gönderi türünden en son gönderileri göstermenize olanak tanır. Ayrıca, daha fazla oku bağlantısıyla yazı alıntılarını görüntüleyebilir veya hatta yazı başlığının yanında öne çıkan bir resmi gösterebilirsiniz.
İstediğiniz seçenekleri belirleyerek ve özel gönderi türünüzü seçerek widget’ı yapılandırın. Bundan sonra değişikliklerinizi kaydedin ve widget’ı web sitenizde çalışırken görün.
Daha Gelişmiş Özel Yazı Tipi Tweaks
Özel gönderi türlerinizle yapabileceğiniz çok daha fazla şey var. Özel gönderi türlerinizi ana RSS beslemesine eklemeyi öğrenebilir veya her özel gönderi türü için ayrı bir yayın oluşturabilirsiniz.
Daha fazla hack için, en kullanışlı WordPress özel gönderi türü eğitimleri listemize bakın.
Özel yazı tipi arşiv sayfalarınızı özelleştirmek için kodsuz bir çözüm arıyorsanız, Beaver Builder veya Divi gibi bir WordPress sayfa oluşturucu eklentisine bir göz atmanızı öneririz çünkü ikisi de bunu yapmanıza yardımcı olabilir.
Umarız bu makale, WordPress’te özel gönderi türleri oluşturmayı öğrenmenize yardımcı olmuştur. Pratik ipuçlarıyla web sitenizin trafiğini nasıl artıracağınıza ilişkin kılavuzumuzu da görmek isteyebilirsiniz.
Bu makaleyi beğendiyseniz, lütfen WordPress video eğitimleri için YouTube Kanalımıza abone olun. Bizi Twitter ve Facebook’ta da bulabilirsiniz.