Jetpack site haritasına (sitemap) özel yazı türlerini (custom post type) eklemek

  • Paylaş

WordPress için Jetpack eklentisinin Sitemap modülü varsayılan olarak özel yazı türlerini oluşturduğu sitemap.xml site haritasında içermiyor.

Bu fonsiyonu WordPress websitenize eklemek için bazı yöntemleri göstermek istiyorum.

Yöntem 1 – Var olan bir diziye eklemek

Temanın functions.php dosyasında var olan özel bir yazı türü kullanan site için, desteklenen özellikler kısmına jetpack_sitemap_post_types elemeniz gerekmektedir.

//* Create portfolio custom post type
add_action( 'init', 'gricizgi_post_type' );
function gricizgi_post_type() {

register_post_type( 'portfolio',
array(
'labels' => array(
'name' => __( 'Yazı türü', 'gricizgi.com' ),
'singular_name' => __( 'Yazı türü', 'gricizgi.com' ),
),
'has_archive' => true,
'hierarchical' => true,
'menu_icon' => get_stylesheet_directory_uri() . '/lib/icons/portfolio.png',
'public' => true,
'rewrite' => array( 'slug' => 'ozel-yazi-turu', 'with_front' => false ),
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'revisions', 'page-attributes', 'gricizgi-seo' ),
'taxonomies' => array( 'portfolio-type' ),

)
);

}

Burada satır 16’da göründüğü gibi basitçe ‘jetpack_sitemap_post_types’ ekleniyor:

'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'revisions', 'page-attributes', 'gricizgi-seo', 'jetpack_sitemap_post_types' ),

Yöntem 2 – Functions.php içine filtre eklemek

Bu yöntem öncekinden biraz daha farklıdır ve WordPress forumlarından öğrendiğimiz bir yöntemdir. Esasen daha çok bu yöntemi tavsiye ederiz. Alttaki kodu basitçe kendi temanızın functions.php dosyasına yapıştırın ve sizin_yazi_turunuz kısmını kendi yazı türünüzle değiştirin.

function gricizgi_sitemaps( $post_types ) {
$post_types[] = 'sizin_yazi_turunuz';
return $post_types;
}
add_filter( 'jetpack_sitemap_post_types', 'gricizgi_sitemaps' );

Yöntem 3 – Jetpack Eklentisini düzenlemek

Eklenti üzerine güncelleme alacağı için bu yöntem pek te iyi bir yöntem değildir. /wp-content/plugins/jetpack/modules/sitemaps/sitemap.php dosyasına giderek 268.satıra ekstra yazı türleri ekleyebilirsiniz, bu da alttaki gibi görünecektir:

$post_types = apply_filters( 'jetpack_sitemap_post_types', array( 'post', 'page', 'ozel_yazi_turunuz' ) );

Son Adım

Son olarak bir yazı ya da sayfa güncellemeniz ya da yeni bir yazı ya da sayfa yayınlamanız gerekmektedir. Böylece site haritanız güncellenecektir.

Bu içeriğe ekleyebileceğiniz bir görüşünüz var mı? İsterseniz, yorumlar kısmına ekleyebilirsiniz.

Yorumlar

Yorumunuzu yazdıktan sonra, "Ben robot değilim" onay kutusuna tıklamanız gerekmektedir, ardından "Gönder" düğmesine tıklayabilirsiniz. Yorumlar, incelenip onaylandıktan sonra yayınlanmaktadır.