Neu Eigene Smarty-Funktion in Exportformat nutzen

  • Wenn Ihr uns das erste Mal besucht, lest euch bitte zuerst die Foren-Regeln durch.
26. Oktober 2017
17
1
#1
Hallo,

Ich erstelle für einen Partner ein Exportformat, welches je nach Uhrzeit besondere Daten enthält. Dies lässt sich leider nicht über ein Funktionsattribut erledigen.

Nun habe ich in meinem Child Template die Datei functions.php im php Ordner angelegt und die Original-Datei inkludiert.
Auf der Artikeldetailseite funktioniert die neue Funktion, welche ich dort per Smarty aufrufe (getestet mit dem Plugin "Aktionsbox").

Leider funktioniert diese Funktion nicht im Exportformat ansich. Hier erkennt es die neue Funktion nicht. Wenn ich versuche, das File zu erstellen, gibt es mir einen Fehler aus.

Sind eigene Funktionen in den Exportformaten nicht einsetzbar? Wie bekomme ich es hin, die neue Funktion auch in den Exportformaten per Smarty aufzurufen?
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
3.906
538
Berlin
#2
Ich meine, das es früher so war das man auch smarty Funktionen nutzen konnte, das geht leider nicht mehr, jedenfalls gesichert nicht wenn ich den Export aus dem Admin heraus aufrufe.

Ich musste letztens auch etwas machen und musste hier über den Hook 110 gehen um Filterbare Daten zu haben.
 

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
665
60
Halle (Saale)
#5
Das Shop-Template hat ja nun auch nichts mit dem Export zu tun - das sind zwei verschiedene Paar Schuhe.
Wo kämen wir denn da hin, wenn man Templates jetzt auch noch mit allen Exportformaten testen müsste.
 
26. Oktober 2017
17
1
#7
@FMoche: Fakt ist, dass man Smarty in den Exportformaten nutzen kann (was im Übrigen eine super Funktionalität ist, da man so für fast jeden Marktplatz ohne grosse Programmierung ein eigenes Exportformat erstellen kann).
Daher ist es auch nicht zu abwegig, dass man eigene Funktionen wie im Template erstellen kann.
 

standart42

Neues Mitglied
23. Oktober 2018
8
2
München
#8
Hi,

ich knüpfe mal an das Thema an.
Wir haben für einen Kunden ein neues Feld angelegt "Eigene Felder".
Dieses soll einen gesonderten Google Shopping Titel beinhalten.
Gibt es irgendeine Möglichkeit mein eigenes Feld in Smarty auszugeben?
Wenn es hilft, das ist mein SQL Query:

select a.cArtNr as SKU, b.cName as Title_Default, f.cWertVarchar as Title_Google_Shopping
from tArtikel a
left join tArtikelBeschreibung b on a.kArtikel = b.kArtikel
left join tArtikelAttribut c on a.kArtikel = c.kArtikel
left join tAttribut d on c.kAttribut = d.kAttribut
left join tAttributSprache e on d.kAttribut = e.kAttribut
left join tArtikelAttributSprache f on c.kArtikelAttribut = f.kArtikelAttribut

/*google shopping title*/
where e.kAttribut = 1182 and f.cWertVarchar != '' and f.cWertVarchar is not null

Schon mal vielen Dank

Christoph
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
2.457
162
Emsland
#11
Wenn das so ist, ich bin um jeden Rat froh, wie es genau funktioniert =)
Wie würde die Syntax dafür aussehen?
Ich hab das so gelöst:
PHP:
{if !isset($Artikel->FunktionsAttribute['shopping_title']) || empty($Artikel->FunktionsAttribute['shopping_title']) }{$Artikel->cName|truncate:150}{else}{$Artikel->FunktionsAttribute['shopping_title'|truncate:150]}{/if}
 

standart42

Neues Mitglied
23. Oktober 2018
8
2
München
#12
Damit das ganze etwas anschaulicher wird, das wäre mein Attribut:

1551858445350.png

Ich gehe davon aus, dass ich den oben beschriebenen ['shopping_title'] aus einer Kombi von d.cGruppeName und c.Name bauen muss oder? In Summe gibt es mehrere Gruppen und Namen.

Vielen Dank und liebe Grüße

Christoph