Yoast kırıntılarına sayfa nasıl eklenir?


9

Yoasts Wordpress SEO kullanıyorum ve ekmek kırıntılarımı ayarladım. Sorun, sayfa ayarlarımın aşağıdaki gibi olması.

/
/about
/blog - On this page I query the posts and display them. The posts themselves have nothing before them in the URL.

Ekmek kırıntısı aşağıdaki gibi görünür.

Home / Category / Page Title

Böyle göstermesini istiyorum.

Home/ Blog / Category / Page Title

Mümkün mü?

Yanıtlar:


27

İşte yapmanız gerekenler hakkında genel prensip:

  1. İçine Kanca wpseo_breadcrumb_linksveya wp_seo_get_bc_ancestors API filtreler .
  2. Blogunuzu$links kullanarak WordPress SEO Breadcrumb dizisine ekleyin array_splice.

Bunu temanızın içine yerleştirin functions.php:

/**
 * Conditionally Override Yoast SEO Breadcrumb Trail
 * http://plugins.svn.wordpress.org/wordpress-seo/trunk/frontend/class-breadcrumbs.php
 * -----------------------------------------------------------------------------------
 */

add_filter( 'wpseo_breadcrumb_links', 'wpse_100012_override_yoast_breadcrumb_trail' );

function wpse_100012_override_yoast_breadcrumb_trail( $links ) {
    global $post;

    if ( is_home() || is_singular( 'post' ) || is_archive() ) {
        $breadcrumb[] = array(
            'url' => get_permalink( get_option( 'page_for_posts' ) ),
            'text' => 'Blog',
        );

        array_splice( $links, 1, -2, $breadcrumb );
    }

    return $links;
}

Not: Sitenize veya ihtiyaçlarınıza özgü kodu güncellemeniz gerekebilir, ancak genel fikir aynı kalır.


Şartlarımı, url ve metin değerlerimi ihtiyaçlarıma göre değiştirdikten sonra bu mükemmel çalıştı. Teşekkürler.
crdunst

Tuhaf. Bu kod, daha önce eklemek yerine 'Kategori'yi' Blog 'ile değiştirdi.
Michael Rogers

SABİT: benim durumumda "1, -2" yerine "2, -3" gerekli neden emin değilim ama bu şekilde çalışır.
Michael Rogers

@rjb teşekkürler, çok yararlı kod! Bir sayfayı kaldırmak yerine patikaya nasıl sayfa ekleyeceğinizi biliyor musunuz?
Cray
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.