Frage

Ich habe mit einer dummen Situation zu kämpfen. Ein Kunde hat mich gebeten, seine ‚Erweiterte Suche‘ Seite zu ändern, ein paar Optionen hinzuzufügen. Die URL dieser Seite ist wie http://www.domainname.com/index.php/catalogsearch/advanced/

Dies ist ein Magento Shop und ich habe keine Erfahrung mit diesem Rahmen. Ich habe versucht, es zu lernen, fand aber die Lernkurve zu steil genug Wissen zu erlangen, die Projekt-Zeit zu beenden.

Also habe ich zuerst ein kleines PHP-Tool, das in allen Quelldateien für einen Suchbegriff und Berichte zurück te Anzahl der Treffer sucht. Ich habe dieses Werkzeug für die eindeutige Zeichenfolgen zu suchen, die auf der vorgerückten Suchseite erscheinen. Aber der Text ist nirgends zu finden!

Mein nächster Versuch war auf der Suche in der Datenbank, um die Zeichenfolge zu finden. So exportierte ich alle Daten DB und kopiert die resultierenden Abfragen in meinem Code-Editor und suchte wieder, und nichts gefunden!

Das ist sehr umständlich und macht mich verrückt. Ich kann nicht den Code-Block finden, die die erweiterten Suchoptionen gibt!

'ANY' Hilfe würde sehr geschätzt werden.

Danke, Majid

War es hilfreich?

Lösung

Die URLs in Magento sagen Ihnen, wo die Vorlagendateien für ein bestimmtes Modul sind.

Zum Beispiel, wenn Sie sich für catalogsearch/advanced/ suchen, alle Template-Dateien befinden sich in dem app/design/frontend/default/your-theme/.

in diesem Ordner suchen und es sollte klar sein. Sie erhalten einen Ordner mit dem Namen catalogsearch haben und im Innern, dass ein Ordner advanced genannt; in dessen Inneren gibt es zwei Dateien:

  • form.phtml
  • result.phtml

Andere Tipps

Bisher habe ich an einer lokalen Dev-Box folgende Taktik - nicht versuchen, diese auf einem Live-Shop offensichtlich:

  1. Schalten Sie Vorlagenpfad Hinweise + Blocknamen in System -> Config -> Entwickler. Dadurch werden Sie auf die phtml Datei, die die endgültige tut machen und auch die Blockobjekttyp, die es verwendet. Es sei denn, Sie haben IP darauf beschränkt, wird jeder Besucher sehen diese!
  2. Dann in den phtml Dateien weiter zu graben, können Sie leicht Zend_Debug :: dump ($ var) die Variable / Objekt in Frage zu prüfen und den Objekttyp usw. finden.
  3. Suchen Sie in Ihrem Editor oder grep durch / app / code Verzeichnisse, welche Dateien definieren den Objekttyp Sie gerade gefunden haben, zu finden - obwohl, wie es basierend auf Zend die richtige Dateipfad die meiste Zeit von dem Objekt ausgearbeitet werden Klasse.

Auch

  • Ein handlicher Trick ist, absichtlich einen Fehler in einer php / phtml Datei einfügen, Magento bietet Ihnen einen schön formatierte Fehlerbildschirm mit einem Call-Stack, die interessant zu lesen ist
  • echo () Aussagen in den Core-Dateien normalerweise ziemlich gut funktionieren, in der Magento einrichten lösen sie normalerweise nicht die HTML-Header zur falschen Zeit gesendet werden
  • Geben Sie eine IDE verwenden wie Netbeans / Eclipse / Zend Studio usw. und setzen alle Magento-Code in einem Projekt, das sich ergebende phpdoc Informationen ‚offene Deklaration‘ und Code wird Ihnen helfen, Stunden des Suchens
  • speichern
  • Verbringen Sie die Zeit Xdebug Arbeit an Ihrem Testserver mit einer IDE zu erhalten, die Sie Gebrauch davon machen kann. Die einfachste Ich habe die Einrichtung von Grund auf neu gefunden (auf einem Mac) ist eine lokale Mamp als IDE mit Netbeans installieren - die Netbeans-Website werden Sie durch diese gehen, sobald Sie dies gut funktioniert haben können Sie sich über die meisten vergessen von die anderen Tricks!

Dies sind nur die Dinge, die ich habe versucht, so weit - weitere Vorschläge bitte! Ich habe nicht noch eine Technik zum Debuggen von Konfigurationsproblemen von XML-Ausgaben in der Vielzahl von XML-Dateien gefunden, die Magento verwendet, hier Probleme sind in der Regel leise und sind wirklich schwer aufzuspüren als Ergebnis + xml Dokumentation schrecklich sind zum Scheitern verurteilt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top