Wie kann ich auf eine bestimmte Seite umleiten, nachdem der Benutzer das Kontaktformular in Magento eingereicht hat? form.phtml hat
%Vor%aber ich bin mir nicht sicher, wo ich die php-Datei finden kann, die die E-Mail-Versendung und Weiterleitungen steuert. irgendwelche Ideen? Danke
EDIT: gefunden in IndexController.php unter app & gt; Code & gt; Kern & gt; Magier & gt; Kontakte & gt; Controller
%Vor%IndexController.php unter App & gt; Code & gt; Kern & gt; Magier & gt; Kontakte & gt; Controller
geändert
%Vor%bis
%Vor%und es verweist jetzt auf die Homepage.
Ich weiß, dass es beantwortet wurde, teile einfach meine Erfahrung. Ich hatte über eine CMS-Seite ein Kontaktformular erstellt. Die Form hat gut funktioniert. Aber nach dem Absenden würde es auf das Magento-Kontaktformular umleiten. Um es zurück zur CMS Seite umzuleiten, musste ich
setzen %Vor% wobei contactus
der URL-Bezeichner ist.
Auch nach der Weiterleitung wurde die Erfolgs- / Fehlermeldung nicht angezeigt. Dafür musste ich hier Änderungen vornehmen.
%Vor%Gehe zu /app/design/frontend/default/yourstore/template/contacts/form.phtml
mit:
%Vor%Ich habe die Lösung von hier
Für die nächste Person
Der Ersteller des Moduls erstellt alles, was Sie benötigen, um den Contacts Controller zu überlasten und Zeit für die Fehlersuche zu sparen. Sparen Sie sich auch den Weg, die Kerndateien direkt zu bearbeiten.
Bearbeiten Sie die Kerndateien nicht!
Es könnte auch eine benutzerdefinierte URL-Umleitung erstellt werden.
id Pfad - Kontakte / Index Anfragepfad - Kontakte / Index Zielpfad - 'Redirect URL'
Um zu vermeiden, dass Core-Dateien überschrieben werden und die Update-Kompatibilität beeinträchtigt wird, habe ich den Controller wie hier beschrieben überlastet: Tutorial: Überladen eines Controllers
%Vor% Und $this->_redirect('*/*/')
in $this->_redirectReferer('contacts/index')
umgeschrieben, so dass Sie auf die vorherige Seite umgeleitet werden, und wenn kein Referrer gesetzt wurde, nach / contacts / index als Fallback.
Ich habe auch form.phtml von
geändert %Vor%bis
%Vor%um die Fehlermeldungen anzuzeigen.
Die kombinierte Lösung wird in beiden Antworten von @Simon und den anderen gegeben
$this->_redirect('*/*/')
überall in app/code/core/Mage/Contacts/controllers/IndexController.php
bis $this->_redirectReferer();
app/design/frontend/base/default/template/contacts/form.phtml
bearbeiten und die Zeile <?php Mage::app()->getLayout()->getMessagesBlock()->setMessages(Mage::getSingleton('customer/session')->getMessages(true)); ?>
in messages_product_view Am besten kopieren Sie die Dateien in 'local'
Tags und Links magento