PHP in .tpl Datein?

Hallo Leute,

ich habe leider keine Antwort finden können. Ist es möglich direkt in einer .tpl Datei PHP zu verwenden?

Ich habe einen Filter mit Zugriff auf eine externe Datenbank in PHP/Java/HTML geschrieben und versuch diese Datei direkt auf meine Startseite im Shop einzubinden… jedoch ohne Erfolg.

 

Hat jemand eine Idee? Wäre über jede Hilfe sehr dankbar

 

Liebe Grüße

Luli1

 

http://lmgtfy.com/?q=smarty+php

führt u.A. zu:
http://www.smarty.net/docs/en/language.function.php.tpl

@Luli1 schrieb:

Hallo Leute,

ich habe leider keine Antwort finden können. Ist es möglich direkt in einer .tpl Datei PHP zu verwenden?

Ich habe einen Filter mit Zugriff auf eine externe Datenbank in PHP/Java/HTML geschrieben und versuch diese Datei direkt auf meine Startseite im Shop einzubinden… jedoch ohne Erfolg.

 

Hat jemand eine Idee? Wäre über jede Hilfe sehr dankbar

 

Liebe Grüße

Luli1

 

Hallo,

kurz und knapp: nein, php - Code im tpl-Dateien zu verwenden geht nicht. Das Smarty-Tag {php} ist als veraltet zu betrachten und funktioniert auch nicht mehr: http://www.smarty.net/docs/en/language.function.php.tpl :

IMPORTANT NOTICE

{php} tags are deprecated from Smarty, and should not be used. Put your PHP logic in PHP scripts or plugin functions instead.

Beste Grüße

Sebastian

1 Like

Danke für die Antworten. Was wären den die alternativen meine PHP dabei im Startbereich ausgeben zulassen?

Ich habe mir schon ein paar Plugin-Tuts angeschaut aber nichts was zu meiner situation passt und extern als Iframe einbinden ist ein absolutes no go :frowning:

 

Liebe Grüße

Luli1

 

PHP direkt im Template zu benutzen ist mindestens genauso ein no go wie iframes…

https://developers.shopware.com/developers-guide/plugin-quick-start/#the-plugin-bootstrap

Das Beispielplugin hier sollte dir alles zeigen was du brauchst um deine PHP-Ausgaben in Template-Variablen zu überführen und im Template auszugeben.

1 Like

Wenn das “Shopware Plugin” (für einen Neuling) zu schwierig ist, und das eigene PHP-Gebastel eher klein ausfällt, ginge es ggf. auch als eigenes Smarty-Plugin im eigenem Theme. Dann via .tpl das Plugin aufrufen und den Rückgabewert ausgeben.
Programmlogik in das Smarty-Plugin auszulagern ist zwar auch nicht sauber - aber dafür sind die Smarty-Plugins ja da.
[Edit: aber immer daran denken: einmal gerendert => im cache => Inhalt nur bedingt dynamisch]

http://www.smarty.net/docsv2/de/plugins.resources.tpl

Wenn an Position “X” inhalt “Y” eingebunden werden soll - am besten auch noch unabhängig vom Cache - wäre wohl ein eigenes “Widget” angebracht, welches via “action” eingebunden wird. Wearing-Sunglasses Das wäre dann aber wirklich eine Herausforderung.

1 Like