Wie verlinke ich Seiten in meinen Templates?
PrestaShop bietet verschiedenen Smarty-Linkfunktionen an. Die wichtigsten Links zeigen auf CMS-Seiten, vorhandene PrestaShop-Controller und Hersteller.
CMS-Seiten-Link:
{$link->getCMSLink('4','about-us')}
=> Tools > CMS > ID & URL entnehmen
Beispiel Versandlink mit HTML und Smarty-Variable:
<a href="{$link->getCMSLink('12','versand-und-zahlung')}">{l s='Shipping'}</a>
Der zweite Paramater (alias/URL) ist optional. Der obige Link kann daher auch so geschrieben werden:
<a href="{$link->getCMSLink('12')}">{l s='Shipping'}</a>
PrestaShop interne Links
Für alle anderen Seiten gibt es die getPageLink Funktion in Verbindung mit dem echten Dateinamen (funktioniert auch mit den im Back-Office eingestellten SEO-Urls): {$link->getPageLink(’stores.php‘)}
Jede php-Datei wird von einem Controller repräsentiert:
{$link->getPageLink('stores')}
Beispiel:
<a title="Kundenkonto" href="{$link->getPageLink('my-account')}">{l s='My Account'}</a>
Mit dem zweiten Parameter „true“ wird SSL eingeschaltet:
{$link->getPageLink('contact', true)}
=> Tools > Seo&URLs
Hersteller-Link
{$link->getManufacturerLink($product_manufacturer)}
veraltete Link-Syntax: {$manufacturer->getLink()}
Hersteller-Logo
src zum Bild (Logo) des Herstellers:
{$img_manu_dir}{$product_manufacturer->id}-mmedium.jpg
Hersteller-Link mit Bild:
<a href="{$link->getManufacturerLink($product_manufacturer)}">
<img src="{$img_manu_dir}{$product_manufacturer->id}-mmedium.jpg"
alt="Logo {$product_manufacturer->name}"title="alle Produkte von
{$product_manufacturer->name} zeigen" /></a>
Sehr schön erklärt.
Ich habe ein Problem mit einer Shopkopie.
Wo finde ich denn die hinterlegte URL die z.B. bei $link->getPageLink(’search‘) abgerufen wird?
Diese verlinkt bei meinem Zweitshop immernoch auf den Erstshop.
Am besten mal alle Tabellen direkt in der Datenbank nach dem Domainnamen des Erstshops suchen. Das geht erfahrungsgemäß am schnellsten.
Hi,
ja habe ich gemacht. Da konnte ich den Home Button richtig verlinken. Aber die Suche greift immernoch auf den Erstshop zu. Naja ist ja nur ein Testshop. Wenn man weiß das man die Suche nicht nutzen sollte…
Komisch find ich es trotzdem.
Hier ist eine Ferndiagnose nicht einfach. Index, Caching, Cookies und diverse Speichertechniken können das manchmal verursachen.