WordPress 3.0 ile Custom Post Types

Öncelikle herkese selamlar. Bu kadar işin arasında bu yazıyı yazmak için vakit bulabildiğime seviniyorum. Daha önce menü sistemini anlattığım şurdaki yazımda da dediğim gibi şimdi Custom Post Types (Özel Yazı Türleri) hakkında bilgi ve kullanılabilirliğini size aktaracağım. Dilim döndüğünce ve anladığımı düşündüğüm tüm taraflarıyla bu yazıda birşeyler bulabileceğinizi umuyorum. Sizi sıkmadan neyin ne olduğunu anlatmaya başlamak istiyorum.

Custom Post Types, yani özel yazı türleri WordPress 3.0 ile birlikte çıkarılacağı duyrulmuş ve WordPress sistemini daha güçlü ve sadece blog oluşturmak için kullanılan değil, başka türden yazı türleriyle ortak bir CMS (Content Managament System – İçerik Yönetim Sistemi) olarak, yani bir Portal olarak kullanmamızı sağlayacak özellikleri bize sunuyor. Bu yazı türleriyle kendinize özel birçok konuyu ayırabiliyor, kategorilendirme yapmadan, sadece yazmak istediklerinizi bölümlere ayırarak ve bunun gerekliliği olarak yazı türleri oluşturarak yazmanızı sağlıyor.

Teorik olarak izlediğiniz filmler hakkında ya da sadece filmler hakkında başlı başına bir bölüm ve yazı türü oluşturabiliyorsunuz. Bunu da basit birkaç işlemle olmasa da wordpress içerisine entegre edebiliyorsunuz. Kodları çok iyi bilmeyen veya kodlarla uğraşmak istemeyen arkadaşlar için bu kodları olabildiğince azaltmaya çalıştım.

Şimdilik WordPress içine bir yazı türü eklemek için bazı dosyalara elle müdahale etmek zorundasınız. Ama bunun da önüne geçip sizi menü sistemindeki gibi kodlamalarla uğraştırmadan bir eklentiyi hem tanıtıp hem de yazı türlerini oluşturmayı anlatacağım.

Custom Post Types UI adlı bir eklenti sayesinde sadece birkaç ileri geri butonu kullanarak kendinize özel bir yazı türü oluşturabiliyorsunuz. Aynen yazılarımızdaki kategoriler gibi ona da ayrı bir kategori sistemi de oluşturabiliyorsunuz.

Bu eklentiyi yükledikten sonra aşağıdaki galeride bulabileceğiniz resimdeki gibi kendine bir menü oluşturuyor. Buradan siz de Özel Yazı Türlerini yönetip ekleyebiliyorsunuz. Add New seçeneğiyle karşınıza çıkan sayfada yeni bir yazı türü ve ona ait olarak ilişkilendirebileceğiniz bir kategori sistemi oluşturabilirsiniz. Bunun için Advanced Options seçeneğini aktif ederek ekleme yapmalısınız. Bununla ilgli zaten anlatılacak çok fazla bişrey yok.

Özel yazı türünüzü ekledikten sonra tabii ki ilk olarak sisteminizde görünmeyecektir. Twenty ten gibi WordPress 3.0 ile tam uyumlu bir tema kullanmıyorsanız tabii. Ama bunun da ufak tefek sırları var. Misal Filmler adında bir sayfa oluşturup, yazı teması seçmek gibi. Öncelikle bu kolay yola gideceğiz.
Bir yazı teması oluşturabilmek için sahip olmanız gereken ufak bir WordPress kod bilgisi. Zaten geri kalanı ben size aktaracağım.
Öncelikle yeni bir php dosyası oluşturun ve içine ilk olarak şu kodları ekleyin:

<?php
/*
Template Name: Post-Type
*/
?>
<?php get_header();  ?>

Burada bunun bir yazı teması olduğunu ve Adının da Post-Type olduğunu söyledik ve WordPress header alanını (temamızın header.php sine denk gelir) çağırmış olduk. Sonrasında dosyaya şu kodları da ekleyelim.

<div id="sizin div başlangıcınız">
	<?php
		$loop = new WP_Query(array('post_type' => 'filmler', 'posts_per_page' => 10));
	?>
	<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
	<?php
		$custom = get_post_custom($post->ID);
	?>

Burada kodlar ile yani bir WordPress loop alanı oluşturduk ve custom post types için $custom komutuyla tam olarak neyi çağırdığımızı aktardık. Burada filmler adında oluşturduğumuz bir özel yazı türünü çağırdık. Sayfa başına 10 adet görünmesini sağladık ki sayfalama olsun. 10 sayısını değiştirerek kendi temanıza göre ayarlayabilirsiniz. Burada loop alanını yeniden yazmamız ile sisteme bu sayfa açıldığında post , yani normal blog yazıları olarak filmler alanındaki yazı türündeki yazıları tanımasını söyledik. Yani geri kalan tüm WordPress blog yazılarını gösterme komutları aynı. Bu alandan sonrasını ben standart bir yazı alanı oluştrarak size aktaracağım ama herhangi bir yazı temasını alarak üstte bahsettiğim yerleri değiştrirerek de kendi temanızı oluşturabilirsiniz.

Yazı temasının geri kalanına aktarmanız gereken kodlar aşağıdadır.

<div id="post">
		<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Kalıcı Bağlantı: <?php the_title_attribute(); ?>">
<?php the_title(); ?></a></h2>
		<div class="post-date">
		<p>Gönderen: <span class="post-author">
<?php the_author_posts_link(); ?></span> Tarih: <?php the_time('j F Y'); ?> &amp;middot;
<span class="post-comments"><?php edit_post_link('Düzenle', '', ' | '); ?>
<?php comments_popup_link('Yorum Yok &amp;#187;', '1 Yorum &amp;#187;', '% Yorum &amp;#187;'); ?></span></p>
		</div>
		<div class="post-exerpt" text-align="justify">
		<?php the_excerpt(); ?>
		<span align="right">
[<a href="<?php the_permalink() ?>" rel="bookmark" title="Devamını Oku: <?php the_title(); ?>"> Devamı </a>]
</span>
		</div>
</div>

<?php endwhile; ?>

<div class="navigation">
			<div class="alignleft"><?php next_posts_link('&amp;laquo; Eski Yazılar') ?></div>
			<div class="alignright"><?php previous_posts_link('Yeni Yazılar &amp;raquo;') ?></div>
</div>

	<?php else : ?>

<h2 class="center">Bulunamadı</h2>
	<p class="center">Üzgünüz, aradığınız şey burada değil.</p>

<?php get_search_form(); ?>

	<?php endif; ?>

</div>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

İşte hepsi bu. Şimdi bu dosyayı istediğiniz bir adla kaydedin ve temanızın olduğu klasöre gönderin. Sonrasında yeni bir sayfa açın ve bu temayı sayfa şablonunuz olarak seçin. Sonrasında kendi özel yazı türünüze normal wordpress alanında olduğu gibi yazı ekleyin ve kaydettikten sonra gidip o sayfaya bakın. Hepsi Bu!

Comments are closed.