Breadcrumbs auf Shopseiten und Einkaufswelten ausblenden

Liebe Community, 

wie schaffe ich es, die Breadcrumbs auf den Shopseiten und in den Einkaufswelten auszublenden? Eigentlich benötige ich sie nur im Blog… 

Danke & LG,
Lisa

Per CSS kannst du sie global ausblenden und nur beim Blog einblenden. So auf die schnelle:

.content--breadcrumb {
    display: none;
}

.is--ctl-blog .content--breadcrumb {
    display: table;
}

 

1 „Gefällt mir“

Im Backend geht es leider nicht. Leider nur so: Frontend Guides

 

1 „Gefällt mir“

Also der obere Code funktioniert bei mir leider nicht, die Breadcrumbs werden dann trotzdem wieder überall eingeblendet. Gibt es da eine neue Idee?
Auch ist die Anordnung nicht optimal, eigentlich bräuchte ich die Breadcrumbs wirklich nur im einzelnen Blogeintrag und dann nicht oben unter der Hauptnavigation sondern am besten unter dem Blogeintrag Headerbild. Habe es mal zur Veranschaulichung manuell bei diesem Blogeintrag eingetragen:

https://www.mixmyshampoo.de/mix-my-shampoo-bekommt-verstaerkung

Ist natürlich viel Aufwand die Breadcrumbs immer manuell zu erstellen, daher die Frage ob man die Breadcrumbs die Shopware automatisch erstellt auch unter dem Bild platzieren und eben nur in der Blogartikelansicht einblenden kann und sonst auf keinen Seiten?

Vielen Dank für jeden Tipp :slight_smile:

Also ICH habe in einem Test-Shop mal ein neues Theme erstellt (wie es geht hat NextMike ja bereits geschrieben oder im Backend Theme erstellen) und dort habe ich eine all.less angelegt und den CSS Code eingetragen. ICH habe jetzt keine Breadcrumbs mehr, nur noch im Blog. Und mit einem eigenen Theme kann ich auch die Postion der Breadcrumbs festlegen.

1 „Gefällt mir“

Ok das klingt super aber da stoße ich wohl an meine Grenzen. Die Datei anlegen könnte ich wohl aber ich müsste wissen in welchem Verzeichnis ich sie uploaden müsste. Ein eigenes Theme habe ich - allerdings nie selbst programmiert. 

Unter dem Menü Themes gibt es oben ein Button “Theme erstellen”. Dieses von Responsiv ableiten, Namen vergeben und speichern. Alle notwendigen Ordner (nicht Dateien) werden dann unter “theme” angelegt. Die CSS-Datei: /theme/Frontend/DeinTheme/frontend/_public/src/less/all.less anlegen und hier deine gewünschten CSS-Einträge vornehmen. Ok, du müsstest die CSS-Datei all.less per FTP irgendwie dann anlegen.

Es ist aber dennoch notwenig sich mit der Sache näher zu befassen.

Nachtrag:

Als Notlösung geht es auch ohne zusätzliche CSS-Datei. Wenn du dir ein eigene Theme erstellt hast, kann du in den Einstellungen zum Theme (Konfiguration) und dann “Weitere CSS-Dateien” eigene Einstellungen eintragen. Beispiel:

.content--breadcrumb {
    display: none;
}

.is--ctl-blog .content--breadcrumb {
    display: table;
}

Wie gesagt als Notlösung!

@R4M wäre es auch möglich die Breadcrumbs nur für Landingpages auszublenden ?

.is--ctl-landingpage .content--breadcrumb {
   display: none;
}

ich will nur die Breadcrumbs auf der Landingpage ausblenden.

Hm, müsste man schauen ob die Seite durch ein bestimmtes Merkmal in CSS ansprechbar ist. Vielleicht kann man der Landingpage eine eigene CSS-Klasse mit übergeben.

Ja ich hatte die Hoffnung rein von der Logik her, das wenn man die Breadcrumbs bei wie du geschrieben hast Blog-Artikeln nur aktiv ist, sie umgekehrt genau so NUR ausblenden kann bei Landingpages. Nur ob der Code so funktioniert, bin ich absolut überfragt.

Grundsätzlich kannst Du einfach in deinem Custom Theme den entsprechenden Block für den Breadcrumb leeren, so macht das SW selbst auch beim Checkout. In der Regel sind alle Seiten von index.tpl abgeleitet. Sähe dann wie folgt aus:

{extends file='frontend/index/index.tpl'}

{* Hide breadcrumb *}
{block name='frontend_index_breadcrumb'}{/block}

Aber ich hab grad auch keine Idee, wie man herausbekommt, ob eine Seite als Landingpage definiert wurde. Das läuft ja über das Emotion Widget. In der Datenbank gibt es ein is_landingpage - aber ob das auch als Eigenschaft an $emotion ins Template durchgereicht wird müsstest Du mal analysieren.

LG Phil

Hm, wenn das nur eine Landingpage ist, könnte man es über den Body-Tag lösen:

body.is--ctl-campaign .content--breadcrumb {
  display: none;
}

Wenn es jedoch eine ganz bestimmte Seite sein soll, wird das etwas schwieriger. Dann würde ich versuchen, im Template die ID der jeweiligen Landingpage (emotionId) mit in den CSS-Klasse von „body“ zu packen. Dann könnte man darüber ganz gezielt die Breadcrump bei einer bestimmten Landingpage ausblenden. Ein ähnliches Verfahren würde auch bei Shopseiten gehen.

Danke euch für eure Antworten !

@R4M wenn die Landingpage deklariert wird mit „Campaign“ dann haben wir es doch ? :slight_smile:

Ich werde das gleich mal testen, Vielen Dank an alle

LG

Ist zwar schon einige Jahre her dieser Eintrag hier, aber mir hat es jetzt geholfen. Es funktioniert wie R4M schreibt über den Body-Tag:

body.is--ctl-campaign .content--breadcrumb {
  display: none;
}

Vielen Dank R4M  :slight_smile:

…also die Breadcrumb auf den Landingpages auszublenden