Sie werden eine Instanz der Link-Klasse verwenden. Im Allgemeinen müssen Sie keinen erstellen, verwenden Sie einfach context->link
(zB einen Controller $this->context-link
). Die Methode ist getModuleLink()
, also:
Achten Sie auf die Benennung:
Der Name des Modulordners ist genau das ..
Der Controller muss im richtigen Pfad sein, also zum Beispiel module / controllers / front / controller.php
Der Dateiname ist die Aktion in Kleinbuchstaben. Der Klassenname lautet ModuleFolder + Action + "ModuleFrontController"
Also zum Beispiel:
Modulverzeichnis: orderattachment
Controller: orderattachment / controllers / front / pdf.php
Controller-Klasse :
%Vor%link :
%Vor%Eine alternative Möglichkeit zum Erstellen einer Verknüpfung besteht darin, einen Hyperlink in der Ansicht (Vorlagendatei) wie folgt zu verwenden:
%Vor%Zum Beispiel muss der Kunde in einem E-Commerce für eine Autowerkstatt das Auto einstellen, das er während des nächsten Termins haben wird (das Modul hängt in der rechten Spalte).
Wenn sein Fahrzeug nicht existiert, muss er / sie ein neues erstellen (die Front-Controller-Seite, die wir aufrufen möchten).
In meinem Beispiel wäre der Link in der Ansicht:
%Vor%Hinweis : Wie von Stratboy in seiner Antwort erwähnt, ist die Namenskonvention sehr wichtig, sonst wird Prestashop die Seite nicht finden können. Zum Beispiel
%Vor%fehlt das " r " von " Controller " im Klassennamen und erzeugt den folgenden Fehler:
Anmerkung 2 : Ich habe dieses hervorragende Tutorial (mit einem vollständigen konkreten Beispiel) benutzt, um mit meinem eigenen Projekt anzufangen: Ссылка
Tags und Links controller hyperlink module prestashop