Super, vielen Dank! Hat auf Anhieb funktioniert. Versteh ich das richtig, dass mit dem SQL-Befehl das Ganze jetzt Updatesicher ist?
Nein, ist beim nächsten Update, das in die Dateien geht weg. Ich verstehe auch gar nicht was das mit dem SQL soll. Da wird doch nur für die Listenansicht das template zugewiesen, das ohnehin genommen wird. Oder bekomme ich gerade etwas nicht mit?
Änderungen in der Datei /includes/classes/product.php sind nicht Updatesicher Und hier: steht nichts von "kopieren und speichern als product_listing_v1-USERMOD.html Von einem -mod-Verzeichnis kann ich bei Denier Anleitung nichts entdecken.
Hier mal ein älterer Part --> http://www.gambio-forum.de/threads/...ansicht-anzeigen?p=60305&viewfull=1#post60305
@ Kai, ich sage ja nicht, das es nicht updatesicher geht, sondern dass die angebotene Anleitung nicht updatesicher ist.
Moin! Geht das auch in der Version v2.1.0.7? Kann in der product.php die Zeile nicht finden. Gruß Björn
Hallo, ist es möglich die Artikelnummer ganz nach rechts außen zu verschieben? Womöglich zweizeilig? Wird momentan direkt an die Artikelbezeichnung angehängt. Danke Christoph
Unter v2.2.1.3 funktionieren die Änderungen in der product_listing_v1_html nicht mehr, die Artikelnummern werden nicht mehr angezeigt. Kann mir jemand helfen? Danke.
Hallo Thomas, In der Version 2.2.1.3 hat sich der Aufbau der Datei "includes/classes/product.php" ganz geändert. Außerdem kann man diese Dateien Updatessicher als Overloads erstellen. Nehmen wir eueren Beispiel an. da macht man in dem Ordner "user_classes/overloads" einen Ordner Namens "product", ohne (" "). dadrin definiert man die Klasse und die Funktion die man über laden möchte. In euerem Beispiel: PRODUCT_MODEL => PHP: class cp_product extends cp_product_parent{ function buildDataArray(&$array, $image = 'thumbnail') { global $xtPrice, $main; $t_data_array=parent::buildDataArray($array, $image); //Additional info in $t_data_array $t_data_array['PRODUCTS_MODEL']=$array['products_model']; //Additional info in $t_data_array return $t_data_array; }} ?> jetzt muss man die Datei "system/classes/listing/ProductListingContentControl.inc.php" überladen. Als erstellen wir in den Ordner "user_classes/overlods" einen Ordner Namens "ProductListingContentControl. In diesem Ordner schreiben wir eine Datei mit dem Inhalt: PHP: <?phpclass extrafeld_ProductListingContentControl extends extrafeld_ProductListingContentControl_parent{ public function getSelectFields() { $select_fields = array('p.products_model'); return $select_fields; } public function extend_proceed($p_action) { $t_sql = $this->sql_query; $select_fields = implode(",",$this->getSelectFields()); $t_sql = str_replace('FROM',','.$select_fields.' FROM',$t_sql); $this->sql_query = $t_sql; parent::extend_proceed($p_action); }} Nun stehen die Daten für die Datei "product_listing_v1.html" zur Verfügung. Jetzt muss man nur in gewünschte Stelle die Daten abrufen. Also z. B. : HTML: ... ... ... {if $module_data.PRODUCTS_FSK18=='true'}<img src="{$tpl_path}img/fsk18.gif" alt="fsk18.gif" title="fsk18.gif" />{/if} </div> <div class="article-list-item-main"> <h2> <a href="{$module_data.PRODUCTS_LINK}" class="product_link"{if $module_data.PRODUCTS_META_DESCRIPTION != ''} title="{$module_data.PRODUCTS_META_DESCRIPTION|truncate:80:"..."|replace:'"':'"'}"{/if}>{$module_data.PRODUCTS_NAME}</a> </h2> <p>{$module_data.PRODUCTS_SHORT_DESCRIPTION}<br /> <!-- BOF products_extrafield --> {if $module_data.PRODUCTS_MODEL || $module_data.SHOW_PRODUCTS_MODEL} {$txt.text_products_model} {$module_data.PRODUCTS_MODEL} ... ... ... Nun muss man eventuel die Sprach Dateien noch anpassen. Also {$txt.text_products_model}: Die Datei "product_listing.lang.inc.php" von dem Ordner lang/german/sections/_samples kopieren und in dem Ordner lang/german/sections ablegen. Also eine Verzeichnisebene höher. Folgender Code in der Datei eingeben: PHP: ......*/$t_language_text_section_content_array = array( // BOF products_extrafield 'text_products_model' => 'Art-Nr.:', // EOF products_extrafield .........'option_shipping_asc' => 'Lieferzeit aufsteigend', 'option_shipping_desc' => 'Lieferzeit absteigend', 'text_pieces' => 'Stück', 'text_products_inhalt' => 'Inhalt:', 'text_buy' => 'kaufen'); Diese Schritt für alle andere Sprachen auch ausführen. Jetzt musste diese Extra- Feld im Frontend bei Artikel-Listing sichtbar sein. Viel Erfolg
entschuldige bitte meine vielleicht blöde Frage, aber wie muss man dann die Datei nennen, die man in den product-Ordner legt?
Das ist keine blöde Frage Im Grunde steht hier die Antwort: Das was hinter class: steht plus .inc.php Dateiname: cp_product.inc.php