PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Artikelnummern in Artieklübersicht anzeigen



coolice
13.01.2014, 14:34
Hallo zusammen,

ich bin gerade von einem unserer Kunden angesprochen worden ob es nicht möglich ist unsere Artikelnummern in der (ich hoffe es ist richtig) Artikelübersicht an zu zeigen.
D.H. wenn ein Kunde auf eine Kategorie drück bekommt er alle Artikel in dieser Kategorie angezeigt und in dieser Ansicht müssten die Artikelnummern angezeigt werden.

Ist das machbar?

Grüße
Mirco

KlausK
13.01.2014, 16:25
Öffne /includes/classes/product.php

Finde (ab Zeile 636 ?) folgendes:


$t_data_array = array ( 'PRODUCTS_NAME' => htmlspecialchars_wrapper($array['products_name']),
'COUNT' => $array['ID'],
'PRODUCTS_ID' => $array['products_id'],
'PRODUCTS_VPE' => $this->getVPEtext($array, $products_price['plain']),
'PRODUCTS_IMAGE' => $this->productImage($array['products_image'], $image),
'PRODUCTS_IMAGE_W' => $array['products_image_w'],
'PRODUCTS_IMAGE_H' => $array['products_image_h'],
'PRODUCTS_IMAGE_WIDTH' => PRODUCT_IMAGE_THUMBNAIL_WIDTH,
'PRODUCTS_IMAGE_PADDING' => ((PRODUCT_IMAGE_THUMBNAIL_HEIGHT + 8) - $array['products_image_h'])/2,
'PRODUCTS_IMAGE_ALT' => $array['gm_alt_text'],
'PRODUCTS_LINK' => $gm_product_link,
'PRODUCTS_PRICE' => $products_price['formated'],
'PRODUCTS_TAX_INFO' => $gm_tax_info,
'PRODUCTS_SHIPPING_LINK' => $gm_shipping_link,
'PRODUCTS_BUTTON_BUY_NOW' => $buy_now,
'GM_PRODUCTS_BUTTON_BUY_NOW_URL' => $gm_buy_now_url,
'GM_PRODUCTS_BUTTON_BUY_NOW' => $gm_buy_now,
'PRODUCTS_SHIPPING_NAME' => $shipping_status_name,
'PRODUCTS_SHIPPING_IMAGE' => $shipping_status_image,
'PRODUCTS_DESCRIPTION' => $array['products_description'],
'PRODUCTS_EXPIRES' => $array['expires_date'],
'PRODUCTS_CATEGORY_URL' => $array['cat_url'],
'PRODUCTS_SHORT_DESCRIPTION' => $array['products_short_description'],
'PRODUCTS_FSK18' => $array['products_fsk18'],
'GM_FORM_ACTION' => xtc_draw_form('gm_add_to_cart_'.$array['products_id'], xtc_href_link('index.php', 'action=buy_now&BUYproducts_id=' . $array['products_id'] . $gm_cat_search, 'NONSSL', true, true, true), 'post', 'onsubmit="return gm_quantity_check_listing(\'' . $array['products_id'] . '\')"'),
'FORM_DATA' => $t_form_array,
'QTY_DATA' => $t_qty_array,
'GM_FORM_END' => '</form>',
'GM_PRODUCTS_QTY' => $gm_qty,
'GM_PRODUCTS_STOCK' => $gm_products_stock,
'PRODUCTS_META_DESCRIPTION' => $array['products_meta_description'],
'PRODUCTS_WEIGHT' => gm_prepare_number((double)$array['products_weight'], $xtPrice->currencies[$xtPrice->actualCurr]['decimal_point']),
'SHOW_PRODUCTS_WEIGHT' => $array['gm_show_weight']);


Vor die letzte Zeile das einsetzen:


'PRODUCTS_MODEL' => $array['products_model'],



Öffne deine Kategorie-Vorlage, z.B. /templates/EyeCandy/module/product_listing/product_listing_v1.html

Folgende Variable kannst du überall dort angeben, wo die Artikelnummer angezeigt werden soll:

{$module_data.PRODUCTS_MODEL}

Ich möchte hier daran erinnern, dass wir es alle super fänden, wenn nach einem gelösten Problem ein kurzes Feedback kommen würde.
Ohne ein Feedback wissen wir nicht, ob das Problem gelöst ist und man hat irgendwann keine Lust mehr zu antworten!

coolice
14.01.2014, 07:47
Guten Morgen Klaus, danke für die schnelle Antwort.
Ich habe die product.php angepasst doch bin ich mir nicht sicher wo genau ich die Variable in der product_listing_v1.html Datei einpflegen muss.
Könntest Du mir das sagen?

Grüße
Mirco

KlausK
14.01.2014, 18:45
Learning by doing!
Setz das Ding doch einfach irgendwo in deine Vorlage.
Wie das dann aussieht, siehst du ja sofort!
Dafür hast du ja einen Testshop! Zum testen! :rolleyes:

Wenn dir die Artikelnummer so wichtig ist, sollte sie vielleicht direkt unter der Produktbezeichnung stehen!

In meinem Testshop (Standart-Template) habe ich in Zeile 137 das stehen:

<p>{$module_data.PRODUCTS_SHORT_DESCRIPTION}<br />

Ändern in:

<p>{$module_data.PRODUCTS_MODEL}{$module_data.PRODUCT S_SHORT_DESCRIPTION}<br />

coolice
15.01.2014, 07:12
Und wieder mal VIELEN DANK. Genau so sollte es aussehen.

mcmobil
04.07.2015, 21:45
Hallo Zusammen,

Diese Anleitung ist wirklich super, funktiert wie gewünscht!
Jedoch ein kleines Problem taucht auf, in der Listenübersicht stehen die Artikelnummern unter der Kurzbeschreibung des Artikels
wenn man jedoch umschaltet auf gekachelte Ansicht wird leider keine Artikelnummer angezeigt.
Muss man hier vieleicht doch noch die {$module_data.PRODUCTS_MODEL} irgendwo einfügen?

Vielen Dank
mcmobil

KlausK
05.07.2015, 10:31
Diese Anleitung dürfte bei neueren Version gar nicht mehr funktionieren.
Wir sind nun bei v2.3.1.7 und mittlerweile ist schon sehr viel umgeschrieben und Strukturen wieder geändert worden.
Hier müsstest du dir die /includes/classes/Smarty/plugins/function.object_product_list.php anschauen.

Die gekachelte Ansicht beinhaltet nur Product-Bild, -name und -Preis.
Es macht keinen Sinn da noch mehr reinzupacken, das sieht dann mächtig gequetscht aus.

mcmobil
05.07.2015, 21:14
Danke Klaus für die rasche Antwort!
Doch doch funktioniert wunderbar ohne Probleme, jedoch zeigt es halt nur die Art.Nr. in der Listenübersicht aber nicht in der gekachelten.
die function.object_product_list.php hab ich mir mal angesehen aber leider kenn ich mich mit PHP nicht wirklich aus und hab keinen schimmer was da wo hinein müsste das unter der Artikelbeschreibung auch die Art. Nr. zu sehen ist.... Notfalls lasse ich das vom GAMBIO Support realisieren.

Du kennst dich ja wohl auf dem Gebiet schon sehr gut aus, vieleicht kannst du mir auch bei einem anderen Problem helfen?
Und zwar geht es hier um die Möglichkeit im Frontend auch nach Art.Nr. zu sortieren habe hier auch eine passende Anleitung gefunden also div. php zeilen eingebaut,
soweit funktioniert das jetzt auch bis auf das Problem das im Dropdown zur sortierauswahl nur zwei weisse felder hinzugekommen sind, wenn ich hier eines auswähle wir auch brav nach Art.Nr abwärts/aufwärts sortiert jedoch fehlt hier der Text.
Hierfür wird ein SQL befehl ausgeführt der in der Datenbank die erforderlichen Tabellen erstellt, dieser ist aber für meine GABMIO version wohl auch zu alt nehme ich an denn beim ausführen kommt der Fehler: Table 'db19xxx_xxxxxxxl.gm_lang_files_content' doesn't exist, hier muss wohl der SQL Befehl auf meine Version angepasst werden, vieleicht kennst du dich da auch aus?


INSERT INTO `gm_lang_files_content` (
`lang_files_content_id` ,
`lang_files_id` ,
`constant_name` ,
`constant_value`
)
VALUES (
NULL , '92', 'option_model_desc', 'Product No. descending'
), (
NULL , '92', 'option_model_asc', 'Product No. ascending'
), (
NULL , '182', 'option_model_desc', 'Artikel-Nr. absteigend'
), (
NULL , '182', 'option_model_asc', 'Artikel-Nr. aufsteigend'
);

mcmobil
06.07.2015, 22:51
Zu dem SQL Problem hat sich bereits eine Lösung gefunden!!!!

'option_model_asc' => 'Artikel-Nr. aufsteigend',
'option_model_desc' => 'Artikel-Nr. absteigend',

in /lang/german/original_sections/product/product_listing.lang.inc.php einfügen
und diese dann nach /lang/german/user_sections/ laden damit mei einem Update die Daten erhalten bleiben.

KlausK
07.07.2015, 08:52
Bitte nicht die Dateien im Verzeichnis /lang/german/original_sections/ ändern.
Denn das macht eine eventuelle Fehlersuche schwieriger.
Außerdem werden diese Dateien beim nächsten Update meistens überschrieben.

Sauberer und übersichtlicher wäre diese Vorgehensweise:
Im Verzeichnis /lang/german/user_sections/ das Unterverzeichnis /products anlegen.
Darin die Datei product_listing.lang.inc.php anlegen und nur die Änderungen eintragen:



<?php
/* --------------------------------------------------------------
product_listing.lang.inc.php 2015-01-02 gm
Gambio GmbH
http://www.gambio.de
Copyright (c) 2015 Gambio GmbH
Released under the GNU General Public License (Version 2)
[http://www.gnu.org/licenses/gpl-2.0.html]

Modifiziert von mcmobil am 06.07.2015
--------------------------------------------------------------
*/

$t_language_text_section_content_array = array
(
'option_model_asc' => 'Artikel-Nr. aufsteigend',
'option_model_desc' => 'Artikel-Nr. absteigend'
);