WordPress ile yapılmış bazı sitelerde veya bloglarda, bilhassa film, müzik, kitap ve benzeri karmaşık çok kategorili olabilecek içeriklerin bulunduğu sitelerde hep var olan kategorileme ve etiketleme sisteminin yetersizliğinden yakınırdım. Bunun için bazı yöntemler kullanmadık değil, mesela TDO Tags Fixes eklentisi ile kategori ve etiketleri şu şekle dahi getirmişliğimiz olmuştu: /blog/?etiket=seo böylelikle kategorinin içindeki yazılara ait etiketlere de ayırmayı becerebiliyorduk yani.
Şimdi tanışacağınız yöntem WordPress 2.8 ile gelen bir yenilik, bu yöntem de temanın functions.php dosyasına ekleme yaparak fazladan etiket alanı oluşturabiliyorsunuz, yani wolkanca.com/etiket/etiketismi gibi atıyorum wolkanca.com/sehir/sehirismi veya wolkanca.com/tarz/akustik örneklerinde ki gibi farklı farklı kullanımları yapabilirsiniz.
Bu bir çok WordPress alt yapısı kullanan proje için çok faydalı olabilecek bir yöntem.
Kullanımından bahsedersem, öncelikle temanızda bulunan functions.php dosyasının içine;
add_action( ’init', 'create_my_taxonomies', 0 ); function create_my_taxonomies() { register_taxonomy( ’tarz', 'post', array( 'hierarchical' => false, ’label' => 'Tarz', 'query_var' => true, 'rewrite' => true ) ); register_taxonomy( 'sehir', 'post', array( #39;hierarchical' => false, ’label' => 'Sehir', 'query_var' => true, 'rewrite' => true ) ); register_taxonomy( 'ulke', 'post', array( 'hierarchical' => false, ’label' => 'Ulke', 'query_var' => true, 'rewrite' => true ) ); }
kodlarını ekleyiniz, burada tarz, sehir ve ulke seçeneklerini değiştirebilir veya komple o satırı kaldırabilir ya da ekleme yapabilirsinz.
Burada sehir kısmı özel etiketimiz oluyor.
post kısmı yazılar için kullanılacak bir etiket olduğunu söylüyor.
hierarchical kısmı hiyerarşik sınıflandırma olabilir demek oluyor.
label kısmı WordPress admin panelinde yazı yazma kısmında görüneceği anlamına geliyor.
query_var kısmı sorgulara cevap vermesi yani wolkanca.com/tarz/akustik/ bağlantısına gidildiğinde akustik e bağlı yazıların listelenebilmesi anlamına gelmekte.
rewrite ise eklediğiniz bu özel etikette kalıcı bağlantınının blogunuzun ana kalıcı bağlantı yapısını kullanmasını sağlıyor, mesela wolkanca.com/?tarz=akustik etiketiniz wolkanca.com/tarz/akustik/ olarak çalışabilir veya eklemezseniz yoursite.com/?tarz=akustik olarak çalışabilir.
Eklediğiniz özel etiketleme için etiket bulutu(wp_tag_cloud()) gösteren kod aşağıdaki gibi;
<?php wp_tag_cloud( array( ’taxonomy' => ’tarz', ’number' => 45 ) ); ?>
Yazılarınıza ait özel etiketlerimizi aşağıdaki kod ile gösterebiliriz;
<?php echo get_the_term_list( $post->ID, ’tarz', 'People: ', ', ', '' ); ?>
Bir sayfa içinde bir özel etikete ait yazıları listelemek için döngü için kodumuz budur;
<?php query_posts( array( ’tarz' => 'akustik', 'showposts' => 10 ) ); ?>
Daha fazla bilgi ve araştırmak için WordPress forumlarını karıştırabilirsiniz arama terimimiz: custom-taxonomies.
“WordPress için özel kategori veya etiketleme” için 1 yanıt
bunu arıyordum. saol.