Marken in Topnavigation

Ich möchte die Hersteller/Marken auch in der Topnavigation (Advanced Menue) anzeigen.
Die URLs der Marken lauten …marke-1/ und …marke-2/ - ohne das Wort Marke dazwischen.

Ich habe eine Kategorie „Marken“ erstellt, die in der Topnavigation angezeigt wird.
Unter Marken hab ich Marke-1 und Marke-2 angelegt, jeweils verlinkt auf …marke-1 und …marke-2 (ohne das Wort Marke dazwischen).
Die URLs der angelegten Kategorien laut Routereinstellungen lauten …marken/marke-1/ und …marken/marke-2/

Im Advanced Menue wird leider die nichtsprechende URL angezeigt.
Klicke ich drauf, wird im Browser und in der Sitebar die normale, sprechende URL angelegt …marke-1/

Ist das ein Bug? Oder hab ich was falsch verstanden?

Hersteller und Kategorien sind unterschiedliche Artikelmerkmale. Die Listings haben eigene URL, Rewrites und Templates. Um die Marken in die Topnavi reinzubekommen könntest du eine Kategorie Marken mit den Markennamen als Elementen anlegen und die Artikel entsprechend einkategorisieren. 

So wie es NextMike geschrieben hat habe ich es auch gemacht.

Kategorie “Marken” angelegt und Unterkategorien mit den Herstellernamen.

Ich habe die Internen Herstellerseiten aus Shopware verbannt und links zu den Hersteller so ungeschrieben das diese zu den Kategorien der Hersteller geleitet werden.

Jetzt mit Shopware 5 hast du ja jetzt die Möglichkeiten den Product-Stream zu nutzen was ich bei der 4er Version noch nicht hatte, so kannst du automatisch die Herstellerkategorien befüllen ohne das du die einzelnen Artikel manuell zuordnen musst.

Uwe

@useg schrieb:

Ich habe die Internen Herstellerseiten aus Shopware verbannt und links zu den Hersteller so ungeschrieben das diese zu den Kategorien der Hersteller geleitet werden.

Da wir jetzt das Update auf 5.1.6 gemacht haben, wollte ich mich da jetzt auch mal dran machen.
Was meinst Du damit, dass Du die Links zu den Herstellern so umgeschrieben hast, dass sie zu den Hersteller-Kategorien geleitet werden?
Hast Du in der Datanbank in org_path den Eintrag für die Herstellerkategorie gesetzt und in main eine 0 eingetragen?

Grüßle,
Frank

  1. Productstream erstellen (Artikel->Product Stream)

(Herstellerfilter->Marke1 auswählen, Hauptshop auswählen, Als Namen Marke1 eintragen, Sortierung auswählen)

  1. Für Marke 2 wiederholen

  2. Kategorie „Marken“ erstellen (Artikel->Kategorien->Deutsch auswählen->Oben bei Unterkategorie  „Marken“ reintippen->Unterkategorie erstellen" klicken)

  3. Kategorie „Marke1“ als Unterkategorie von Marken erstellen

  4. Kategorie Marke1 auswählen -> auf Productstream den Productstream Martke 1 auswählen->Speichern

  5. Punkte 4 und 5 für Marke 2 wiederholen

Der Weg ist klar. :wink:
Es geht um die URLs der Hersteller/Marke und um die URLs der neuen Kategorien.
Die Hersteller-URLs sind auf der Artikeldetailseite verlinkt auf domain.de/marke1/.
Die neuen URLs für die Topnavigation sollten natürlich genauso lauten und nicht  domain.de/marken/marke1/

Deshalb die Frage aus meinem vorherigen Posting.
 

Ich habe die Herstellerseiten garnicht mehr drin und auch aus der Sitemap verbannt und die Links auf den Deteilseiten zu den Herstellern auf domain.de/marke/hersteller1, anders herum funktioniert es nicht, das hatte ich auch ausgibig getestet.

Bei der detail/index.tpl habe ich den Link beim Herstellerbild wie folgt geändert.

{extends file="parent:frontend/detail/index.tpl"}

{* Product - Supplier information *}
  {block name='frontend_detail_supplier_info'}
      {if $sArticle.supplierImg}
          
          {* url auf Hersteller-Kategorie geändert + Herstellerbild - u.seg. -2015-09-02-*}
           
             
                  
                                                    
          
      {/if}
  {/block}

 

wobei die „sCategory=85“ die Markenkategorie ist also domain.de/marke/ und " lower|replace:" „:“-" " schreibt den Hersteller in der URL klein und ersetzt ein Leerzeichen durch ein Bindestrich.

Paralel muss du das ganze dann noch in dem Tab Produktbeschreibung machen, weil es da auch noch den Herstellerlink gibt, den habe ich bei mir aber entfernt.

Uwe

Alles klar. Wie ich den Text-Link auf die Hersteller aus der Detailansicht rausbekomme, weiß ich. Herstellerbilder nutzen wir nicht.

Mir hat der Zusammenhang aus Deiner Aussge gefehlt „… links zu den Hersteller so ungeschrieben das diese zu den Kategorien der Hersteller geleitet werden.“.
Das geht dann über die Datenbank: Einträge suchen und org_path anpassen.

Das es am Ende nur geht, wenn die Links aus der Detailseite raus sind, habe ich befürchtet.
Jetzt muß ich nur noch die Sitemap manipulieren, damit die Links auf die Hersteller dort nicht eingefügt werden.

Grüßle,
Frank

@simplybecause schrieb:

Das geht dann über die Datenbank: Einträge suchen und org_path anpassen.

Das es am Ende nur geht, wenn die Links aus der Detailseite raus sind, habe ich befürchtet.
Jetzt muß ich nur noch die Sitemap manipulieren, damit die Links auf die Hersteller dort nicht eingefügt werden.

Grüßle,
Frank

Die Links auf die „Herstellerseiten“ die ja dann Markenkategorien sind kannst du ja drin lassen nusst du nur wie oben beschrieben anpassen.

die org_path  raussuchen und umschreiben brauchst du dar nicht erst versuchen, baust du den Index neu auf sind dies Einträge wieder überschrieben und außerdem leiten die „sViewport=listing&sAction=manufacturer&sSupplier=“ auf die Herstellerseiten die es ja seperat gibt, diese aber nicht mit den Markenkategoreien identisch sind.

Wenn du jetzt noch Hersteller-Slider drin hast wird es noch mehr Arbeit, ich personlich würde sowas jetzt über ein Plugin lösen, aber damals was ich noch nicht so weit.

Jetzt muß ich nur noch die Sitemap manipulieren, damit die Links auf die Hersteller dort nicht eingefügt werden.

 /frontend/sitemap_xml/index.tpl anlegen und die mobile Version nicht vergessen.

{extends file="parent:frontend/sitemap_xml/index.tpl"}

{block name="frontend_sitemap_xml_suppliers"}{/block}

 

Uwe

 

Danke für den Hinweis bzgl. Sitemap. :wink:

Ich muss eh in die DB, da wir früher den Pfad domain.de/marken/marke1 usw hatten und nun nur domain.de/marke1 haben.
Es gibt also pro Marke mindestens 2 Einträge in der DB.
Erst im SEO-Router das Template anpassen auf wirdnichtgebraucht/marke1, Kategorien anlegen und die Rewrites ändern.
Sind auch noch einige Umleitungen von alten Artikeln drin. Die Arbeit hab ich dann eh.

Grüßle,
Frank

Hmm, es gibt ja noch die Seite sitemap (ohne .xml).
Dort ist es nciht möglich, die Links auf Hersteller auszublenden.

Wir haben die Seite zwar nicht verlinkt, aber wer weiß. :wink:

Dort ist es nicht möglich, die Links auf Hersteller auszublenden.

klar gibt es die, da ist doch der Block

{block name="frontend_sitemap_navigation_supplierpages"}
	
		{s name='SitemapSupplierPages'}{/s}
	
{/block}

 

Hallo, danke ersteinmal für den tollen Lösungsansatz. Zum letzten Post habe ich aber doch Problem. Wenn ich im eigenen theme/frontend/sitemap/index.tpl den obigen Block ausblende mit:

{extends file="parent:frontend/sitemap_xml/index.tpl"}

{block name="frontend_sitemap_navigation_supplierpages"}{/block}

verschwindet zwar der Titel, jedoch sind die einzelnen Herstellerlinks noch zu sehen. Was mache ich hier falsch?  Könnte einen Tip gebrauchen, komme hier einfach nicht weiter

Da geht’s Dir wie mir. Das hatte ich auch schon versucht, mit dem gleichen Ergebnis.
Wollt’ ich auch schon posten, hab’s aber vergessen.

Ich habe es immer noch nicht hinbekommen. Ich übersehe da irgendwas. Used, könntest Du uns noch mal unterstützen?

Lieben Dank, 

Sacha

@lichtraum24 schrieb:

Hallo, danke ersteinmal für den tollen Lösungsansatz. Zum letzten Post habe ich aber doch Problem. Wenn ich im eigenen theme/frontend/sitemap/index.tpl den obigen Block ausblende mit:

{extends file=„parent:frontend/sitemap_xml/index.tpl“}

{block name=„frontend_sitemap_navigation_supplierpages“}{/block}

verschwindet zwar der Titel, jedoch sind die einzelnen Herstellerlinks noch zu sehen. Was mache ich hier falsch?  Könnte einen Tip gebrauchen, komme hier einfach nicht weiter Smile

Hallo,

du schreibst oben von der "/frontend/sitemap/index.tpl " , aber der Code darunter ist ja für die "/frontend/sitemap_xml/index.tpl " gedacht, aber mit den Block den es in dieser Datei nicht gibt, dieser ist von der „/sitemap/index.tpl“ .

Für die „/sitemap/index.tpl“ sollte es so funktionieren.

{extends file="parent:frontend/sitemap/index.tpl"}

{block name="frontend_sitemap_navigation_supplierpages"}{/block}

Und für die „/sitemap_xml/index.tpl“:

{extends file="parent:frontend/sitemap_xml/index.tpl"}

{block name="frontend_sitemap_xml_suppliers"}{/block}

 

Uwe

Hallo Uwe,

danke für die schnelle Antwort, ja Da hattest Du recht. In meinem Bespiel hatte ich den extends-Link falsch eingetragen. Dies lag an meinen ettlichen Versuchen :slight_smile:

Hieran liegt es aber nicht. Wenn ich es so mache wie Du sagt, wird nur der Titel versteckt, nicht jedoch die einzelnen Hersteller-links.

Hast Du noch eine andere Idee?

Lieben Gruß,

Sacha

Wenn der Block leer ist kann doch auch kein Link mehr da sein, das verstehe ich nicht, den kompletten Cache hattest du gelöscht und das Theme kompiliert?

Ich habe es so bei mir drin und es funktioniert.

Sprechen wir jetzt von der /sitemap oder /sitemap.xml?

 

Kommando zurück habe doch noch mehr in der sitemap/index.tpl geändert, hatte damals noch zusätzlich eine Abfrage zu den Herstellern eingebaut, so sieht diese vollständig aus:

{extends file="parent:frontend/sitemap/index.tpl"}

{block name="frontend_sitemap_content"}
        {$i = 0}

		{foreach $sCategoryTree as $categoryTree}
            {if ($categoryTree.name == 'SitemapStaticPages' || $categoryTree.name == 'SitemapSupplierPages' || $categoryTree.name == 'SitemapLandingPages') && !$categoryTree.sub}
                {continue}
            {/if}

			{if $i == 0}
				
			{/if}

			{block name="frontend_sitemap_category"}
            
            {if $categoryTree.name == 'SitemapSupplierPages'}
            {else}
            
				

					{block name="frontend_sitemap_navigation"}
						

							{block name="frontend_sitemap_navigation_headline"}
								

									{if $categoryTree.name == 'SitemapStaticPages'}
										{block name="frontend_sitemap_navigation_staticpages"}
											
												{s name='SitemapStaticPages'}{/s}
											
										{/block}
									{elseif $categoryTree.name == 'SitemapSupplierPages'}
										{block name="frontend_sitemap_navigation_supplierpages"}
											
										{/block}
									{elseif $categoryTree.name == 'SitemapLandingPages'}
										{block name="frontend_sitemap_navigation_landingpages"}
											
												{s name='SitemapLandingPages'}{/s}
											
										{/block}
									{else}
										{block name="frontend_sitemap_navigation_defaultpages"}
											
												{$categoryTree.name}
											
										{/block}
									{/if}

								
							{/block}

							{if $categoryTree.sub}
								{include file="frontend/sitemap/recurse.tpl" sCategoryTree=$categoryTree.sub depth=1}
							{/if}
						
					{/block}

				
                {/if}
			{/block}

			{if $i == 3 || $categoryTree@last}
				
                {$i = 0}
            {else}
                {$i = $i + 1}
			{/if}
		{/foreach}
	{/block}

Gruß Uwe

1 „Gefällt mir“

Super, danke klappt hervorragend, so klappt es perfekt. Vielen Dank Uwe,