Franz Holzinger

Verse of the day

Wie sich ein Vater über Kinder erbarmt, so erbarmt sich der HERR über die, so ihn fürchten.
Psalm 103:13

© Bible Gateway's Verse of the Day


Autor  
31-05-08 16:23:23 Zusätzliche Felder
Petra Arentzen
Hallo,

ich habe ein paar zusätzliche Felder mit Hilfe einer Extension hinzugefügt. Die werden im Backend auch wunderbar angezeigt. Doch ich weiß nicht, wie ich schaffen soll, dass diese in der Artikelansicht angezeigt werden.
Ich dachte zuerst, ich müsste über die Marker-Hooks gehen, aber das klappt so nicht.
Die Extension heißt user_bookshop, also heißt eines der Datenbankfelder user_bookshop_isbn. Wie schaffe ich es nun, dass der Marker ###PRODUCT_USER_BOOKSHOP_ISBN### (oder muss er anders heißen?) mit dem Wert befüllt wird, der in der Produkttabelle hinterlegt ist?

Ich verwende tt_products 2.5.6.

Viele Grüße

Petra
3-06-08 18:28:38 Zusatzextension mit Hooks
Franz Holzinger
Hallo Petra,

dafür ist eine Zusatzextension notwendig, die über den Hook aus der Datei tt_products/model/class.tx_ttproducts_article_base.php aufbaut.

if (is_array ($TYPO3_CONF_VARS['EXTCONF'][TT_PRODUCTS_EXTkey][$this->marker])) {
foreach ($TYPO3_CONF_VARS['EXTCONF'][TT_PRODUCTS_EXTkey][$this->marker] as $classRef) {
$hookObj= &t3lib_div::getUserObj($classRef);
if (method_exists($hookObj, 'getItemMarkerArray')) {
$hookObj->getItemMarkerArray ($this, $markerArray, $item, $catTitle, $imageNum, $imageRenderObj, $forminfoArray, $code, $id);
}
}
}


In der Methode getItemMarkerArray der Klasse aus der Zusatz-Extension können neue Marker aus den aktuellen Daten überschrieben werden.

Grüße
Franz
12-07-08 23:35:56 Eigene Felder und Marker
Thorsten Orth
Hallo Franz,

ich stehe vor dem gleichen Problem. Habe mit einer Extension ein zusätzliches Feld zum Produkt hinzugefügt.

Was mir nicht ganz klar ist, wo soll der oben oben stehen Code in meine Extension eingefügt werden, damit der Marker generiert wird?

Habe es auch schon mit dem folgenden Eintrag in der tt_products/model/class.tx_ttproducts_article_base.php versucht:

$markerArray['###'.$this->marker.'_EVENTSTART###'] = $row['tx_addfield_eventstart'];

der daraus resultierende Marker müsste doch ###PRODUCT_EVENTSTART### heißen?

Ich verwende tt_products 2.6.x oder, wenn mein Kunde dem Kauf der aktuellen Version von mbi_products_category zustimmt, 2.7.x

Grüße

Thorsten
13-07-08 01:02:36 Eigene Felder und Marker
Thorsten Orth
Hallo nochmal,

der Fehler scheint wo anders zu liegen. Wenn ich die Zeile:
$markerArray['###'.$this->marker.'_EVENTSTART###'] = $row['title']; so abänder, dann wird der Marker mit dem Produkt-Titel befüllt. Habe bereits kontrolliert, dass das Datenbankfeld existiert und auch einen Inhalt hat.

Scheinbar wird das Feld von tt_products nicht aus der Datenbank gelesen.

Was mache ich falsch?

Späte Grüße

Thorsten
13-07-08 03:23:47 Eigene Felder und Marker
Thorsten Orth
Schon wieder ich,

habe die Lösung jetzt selber gefunden. Scheinbar war der Feldname das Problem (tx_addfield_eventstart). Das Feld heißt jetzt eventstart und es funktioniert.

Den Marker definiere ich, indem ich aus der ext_localconf.php meiner Extension, die Datei mit der folgenden Klasse aufrufe.

<?php
class tx_add_field {

function getItemMarkerArray ($pObj, &$markerArray, $item, $catTitle, $imageNum, $imageRenderObj, $formInfoArray, $code, $id)
{
$row = $item['rec'];
$markerArray['###EVENTSTART###'] = $row['eventstart'];

}
}
?>

So, jetzt kann ich beruhigt schlafen gehen ...

Grüße

Thorsten
13-07-08 05:10:33 Eigene Felder und Marker
Thorsten Orth
zu früh gefreut. Die Marker werden nur in der Detailansicht mit dem entsprechenden Inhalt befüllt. In der Liste bleiben sie leer. Woran kann das liegen?

Gruß

Thorsten
13-07-08 16:21:01 Eigene Felder und Marker
Thorsten Orth
Hallo,

bei der Listen-Ansicht werden diverse Datenbankfelder nicht mit in das Array $item übergeben, was ja auch durchaus Sinn macht.

Aber wo kann ich dem Array die gewünschten Felder für die Listenansicht übergeben?

Grüße

Thorsten
13-07-08 19:47:28 setup anpassen
Petra Arentzen
Hallo Thorsten,

wenn ich mich richtig erinnere, dann musst du die requiredFields im setup von tt_products ändern:
plugin.tt_products {
...
conf.tt_products.ALL {
requiredFields = uid,pid,category,price,price2,tax,inStock,deinfeld1,deinfeld2 ...
}
...
}

Viele Grüße

Petra
13-07-08 20:43:39 setup anpassen
Thorsten Orth
Hallo Petra,

das war es!!
Super ... Vielen Dank!!!

Grüße

Thorsten
< Zurück zum Forum