Entfernen Sie die „Markierten Produkte“ aus den Breadcrumbs des Woocommerce-Tag-Archivs

Lesezeit: 2 Minuten

In meiner Storefront-WordPress verwende ich die Woocommerce-Produkt-Tags, um meine Produkte auf alternative Weise anzuzeigen. Auf den Tag-Archivseiten sagt der Breadcrumb

Home > Produkte verschlagwortet mit „Example Tag“ bzw. Startseite > Produkte verschlagwortet mit „Example Tag“, da ich eine deutschsprachige Seite habe.

-> Ich möchte das „Produkte verschlagwortet mit“ loswerden und das Beispiel-Tag (ohne die Anführungszeichen) nur noch im Breadcrumb anzeigen lassen:

Startseite > Beispiel-Tag ( Startseite > Beispiel-Tag)

Ich habe eine Menge Sachen gefunden, wie man das Breadcrumb im Allgemeinen anpasst, aber nirgendwo, wie man dieses spezifische Problem loswird.

Irgendwelche Ideen?

Ich weiß, es ist eine Weile her, aber vielleicht hilft es jemand anderem. Ich habe mir das ausgedacht:

/**
 * Remove "Products tagged" from product tags breadcrumbs
 */
add_filter('woocommerce_get_breadcrumb', 'woocommerce_breadcrumbs_remove_text', 10);
function woocommerce_breadcrumbs_remove_text($crumbs) {

  // Check if we are in a product tag archive page
  if (is_product_tag()) {

    // Point to the last element of the breadcrumbs array, specifically the breadcrumb we are going to edit
    end($crumbs);

    // Get the text to edit (array key number 0)
    $last    = $crumbs[key($crumbs)][0];

    // Perform a regular expression to keep only what's between quotes (“ and ”)
    $replace = preg_replace('/[\s\S]+\“([\s\S]+)\”/', '$1', $last);

    // Register the new text to the breadcrumb array
    $crumbs[key($crumbs)][0] = $replace;

    // Reset the array pointer
    reset($crumbs);
  }

  // Return the filtered breadcrumbs array
  return $crumbs;
}

Dies ist ein Filter mit der woocommerce_get_breadcrumb Haken. Sie sollten diesen Code in die Datei functions.php Ihres Themes einfügen.

Ungetestet, aber versuch mal folgendes:

// Customize text strings
function my_gettext( $translation, $text, $domain ) {
    switch ( $translation ) {
        case 'Products tagged “%s”' :
            $translation = __( '%s', 'woocommerce' );
            break;
    }
    return $translation;
}
add_filter( 'gettext', 'my_gettext', 20, 3 );

Wenn Sie ein ThemeBlvd-Design verwenden, gehen Sie stattdessen wie folgt vor:

// Customize "Products tagged" in breadcrumbs
function my_locals( $locals ) {
    $locals['crumb_tag_products'] = '%s';
    return $locals;
}
add_filter('themeblvd_frontend_locals', 'my_locals');

Sie könnten dieses Element aus Inspect Element auswählen und benutzerdefiniertes CSS dafür schreiben und es auf setzen
display: none;

  • Nein, da sich der Text in einem Element befindet und ich einen Teil (Beispiel) davon sichtbar halten möchte

    –> Und dieses Tag ändert sich, also kann ich es nicht durch CSS ersetzen

    – Medienmarx

    11. August 2017 um 9:53 Uhr


1437700cookie-checkEntfernen Sie die „Markierten Produkte“ aus den Breadcrumbs des Woocommerce-Tag-Archivs

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy