Die ursprüngliche Anleitung stammt von hier: (Link nur für registrierte Nutzer sichtbar.) Ich habe das nur aktualisiert. Läuft bei mir unter 4.0, 4.2 und 4.3 Erstellt ein eigenes Verzeichnis in GXModules, falls ihr schon eins habt, könnt ihr das nutzen Meins/Angebote/Shop/Overloads/xtcPrice/ und darin die Datei specials_xtcPrice.php mit diesem Inhalt wenn die Anzeige unter dem Preis (zwischen dem neuen Preis und dem Grundpreis) angezeigt werden soll: PHP: <?php/* -------------------------------------------------------------- xtcPrice.php 2015-01-20 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] -------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(currencies.php,v 1.15 2003/03/17); www.oscommerce.com (c) 2003 nextcommerce (currencies.php,v 1.9 2003/08/17); www.nextcommerce.org (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: xtcPrice.php 1316 2005-10-21 15:30:58Z mz $) Released under the GNU General Public License --------------------------------------------------------------------------------------- */class specials_xtcPrice extends specials_xtcPrice_parent{ public function xtcFormatSpecial($p_products_id, $p_special_price, $p_old_price, $p_format, $p_return_array = 0) { if($p_format) { $t_price_html = ''; if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<span class="productOldPrice">' . $this->v_coo_language_text_manager->get_text('old_special_price') . ' ' . $this->xtcFormat($p_old_price, $p_format) . '</span><br />'; } if($this->checkAttributes($p_products_id, true)) { $t_price_html .= $this->checkAttributes($p_products_id, true) . ' ' . $this->xtcFormat($p_special_price, $p_format); } else { $t_price_html .= $this->v_coo_language_text_manager->get_text('new_special_price') .' ' . $this->checkAttributes($p_products_id) . ' ' . $this->xtcFormat($p_special_price, $p_format); } // Anfang Anpassung Prozente/Betrag bei Sonderpreis if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<br /><span class="sale">' . $this->v_coo_language_text_manager->get_text('sonder_price_1') . ' ' .$this->xtcFormat(round($p_old_price-$p_special_price, 2) , $p_format) . $this->v_coo_language_text_manager->get_text('sonder_price_2') . ' '.'</span>'; }// Ende Anpassung Prozente/Betrag bei Sonderpreis $t_price_html = $this->sanitizePriceString($t_price_html); if($p_return_array == 0) { $this->dataCache->set_data($cacheKey, $t_price_html); return $this->dataCache->get_data($cacheKey); } else { $t_price_array = array(); $t_price_array['formated'] = $t_price_html; $t_price_array['plain'] = $p_special_price; $this->dataCache->set_data($cacheKey, $t_price_array); return $this->dataCache->get_data($cacheKey); } } else { $t_price = round($p_special_price, $this->currencies[$this->actualCurr]['decimal_places']); $this->dataCache->set_data($cacheKey, $t_price); return $this->dataCache->get_data($cacheKey); } }} Soll die Anzeige über dem Preis stehen, wäre das dieser Code: PHP: <?php/* -------------------------------------------------------------- xtcPrice.php 2015-01-20 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] -------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(currencies.php,v 1.15 2003/03/17); www.oscommerce.com (c) 2003 nextcommerce (currencies.php,v 1.9 2003/08/17); www.nextcommerce.org (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: xtcPrice.php 1316 2005-10-21 15:30:58Z mz $) Released under the GNU General Public License --------------------------------------------------------------------------------------- */class specials_xtcPrice extends specials_xtcPrice_parent{ public function xtcFormatSpecial($p_products_id, $p_special_price, $p_old_price, $p_format, $p_return_array = 0) { if($p_format) { $t_price_html = ''; // Anfang Anpassung Prozente/Betrag bei Sonderpreis if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<span class="sale">' . $this->v_coo_language_text_manager->get_text('sonder_price_1') . ' ' .$this->xtcFormat(round($p_old_price-$p_special_price, 2) , $p_format) . $this->v_coo_language_text_manager->get_text('sonder_price_2') . ' '.'</span><br />'; }// Ende Anpassung Prozente/Betrag bei Sonderpreis if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<span class="productOldPrice">' . $this->v_coo_language_text_manager->get_text('old_special_price') . ' ' . $this->xtcFormat($p_old_price, $p_format) . '</span><br />'; } if($this->checkAttributes($p_products_id, true)) { $t_price_html .= $this->checkAttributes($p_products_id, true) . ' ' . $this->xtcFormat($p_special_price, $p_format); } else { $t_price_html .= $this->v_coo_language_text_manager->get_text('new_special_price') .' ' . $this->checkAttributes($p_products_id) . ' ' . $this->xtcFormat($p_special_price, $p_format); } $t_price_html = $this->sanitizePriceString($t_price_html); if($p_return_array == 0) { $this->dataCache->set_data($cacheKey, $t_price_html); return $this->dataCache->get_data($cacheKey); } else { $t_price_array = array(); $t_price_array['formated'] = $t_price_html; $t_price_array['plain'] = $p_special_price; $this->dataCache->set_data($cacheKey, $t_price_array); return $this->dataCache->get_data($cacheKey); } } else { $t_price = round($p_special_price, $this->currencies[$this->actualCurr]['decimal_places']); $this->dataCache->set_data($cacheKey, $t_price); return $this->dataCache->get_data($cacheKey); } }} Dann erstellt Ihr im gleichen Verzeichnis neben dem Ordner Shop ein Unterverzeichnis /TextPhrases/german/ mit der Datei price.lang.inc.php mit diesem Inhalt: PHP: <?php/* -------------------------------------------------------------- price.lang.inc.php 2019-06-05 Gambio GmbH http://www.gambio.de Copyright (c) 2019 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( 'sonder_price_1' => ' Sie sparen ', 'sonder_price_2' => ' ! ',); sonder_price_1 steht vor dem gesparten Betrag und sonder_price_2 dahinter. Den Text könnt Ihr natürlich ändern. Wer einen Shop in mehreren Sprachen hat, muss die anderen Sprachordner mit der jeweiligen Datei anlegen. Zur Übersicht einmal die Pfade: GXModules/Meins/Angebote/Shop/xtcPrice/specials_xtcPrice.php GXModules/Meins/Angebote//TextPhrases/german/price.lang.inc.php Jetzt kann man entweder eine weitere Datei für den Style anlegen, oder man gibt den im eigenen css ein. ...geht gleich weiter....
Teil 2: Für das CSS als Datei: Der Pfad wäre GXModules/Meins/Angebote/Shop/Themes/All/Css/ Die Datei darin: angebot.css mit dem Inhalt: Code: .productlist-viewmode-grid .product-container .sale, .productlist-swiper .product-container .sale, .product-container.flyover .sale { color: #Textfaarbe; background-color: #Hintergrundfarbe; font-size:12px; font-weight: normal; border-radius: 9px; padding: 1px 5px 1px 5px; float: none !important; width: 100% !important; } .product-container .inside .content-container .content-container-inner .sale{ color: #Textfarbe; background-color: #Hintergrundfarbe; font-size:12px; font-weight: normal; border-radius: 9px; padding: 2px 15px 2px 15px; width: auto; float: right !important; } .product-info .product-info-details .price-container .current-price-container .sale{ float: none; text-align: center; color: #Textfarbe; background-color: #Hintergrundfarbe; font-size:12px; font-weight: normal; border-radius: 20px; padding: 5px 15px 5px 15px; line-height: 5px; } Achtung: #Textfarbe; und #Hintergrundfarbe; müssen mit Euren Wunschfarben / Farbcodes ersetzt werden. Alles andere kann nach Wünsch angepasst werden. Die Codes kann man genauso in das eigene css im Style Editor packen, ist bei Änderungen in der Zukunft vielleicht einfacher. Wer auch die % in der Anzeige haben möchte, das geht, aber es kann da Abweichungen mit der Anzeige im Ribbon geben. Deshalb hatte Ich das bei mir raus genommen. Ist blöd, wenn oben 15% steht und unten dann 14% oder 16% weil das einmal auf und einmal abgerundet wird. Nachtrag: Wer die Anzeige über dem Preis einfügt, muss eventuell noch etwas an den Kacheln anpassen. Das muss man aber im einzelnen sehen. Nachtrag die 2.: Wer das Modul für Sonderangebote von Kei Stejuhn hat, da kann es sein, dass die Dateien in das Verzeichnis von Kai müssen.
Erstmal sowieso ein riesen Danke. Aber es will bei mir nicht laufen. Sogar die gleichen Verzeichnisnamen verwendet, alle Caches geleert, dem Dominik sein Ladezeittool zurückgesetzt, ... kein verbogenes Design ... die Anzeige ist einfach nicht da. Es sind auch keine weiteren externen Module vorhanden. Hast du noch irgendwelche Ideen?
Der Shop rundet wohl ab, weil nur volle % im Ribbon stehen. Ergeben sich rechnerisch zB 14,7% Rabatt, wird eigentlich (kaufmännisch) auf 15% aufgerundet. Hat man aber einen nachrechnenden, pfennigfuchsenden Kunden, regt der sich auf, weil er nur 14,7% und keine 15% Rabatt bekommt - weswegen wohl besser nur abgerundete 14% angezeigt werden.
Nach einer runde Schlaf habe ich den Fehler gefunden. Die Verzeichnisstruktur ist falsch. Es muss heißen: /GXModules/Meins/Angebote/Shop/Overloads/xtcPrice/specials_xtcPrice.php /GXModules/Meins/Angebote/Shop/Overloads/[Templates oder Themes]/All/Css/angebot.css /GXModules/Meins/Angebote/TextPhrases/german/price.lang.inc.php Caches für Modulinformationen und Seitenausgabe leeren. Funktioniert im GX 4.1.1.3 mit Honeygrid Template einwandfrei.
Stimmt, ich bin von einem Theme ausgegangen. Das Template wird nicht mehr lange supportet, deshalb sollte man so langsam umsteigen.
Ich bekomm das nicht zum laufen. Ich habe 1. \GXModules\Meins\RabattAnzeige\Shop\Themes\All\Css\angebot.css mit Code: .productlist-viewmode-grid .product-container .sale, .productlist-swiper .product-container .sale, .product-container.flyover .sale { font-size:12px; font-weight: normal; color: #fff; background-color: #ff0000; border-radius: 9px; padding: 1px 5px 1px 5px; float: none !important; width: 100% !important; } .product-container .inside .content-container .content-container-inner .sale{ font-size:12px; font-weight: normal; color: #fff; background-color: #ff0000; border-radius: 9px; padding: 2px 15px 2px 15px; float: right !important; width: auto; } .product-info .product-info-details .price-container .current-price-container .sale{ font-size:12px; font-weight: normal; line-height: 5px; color: #fff; background-color: #ff0000; text-align: center; border-radius: 20px; padding: 5px 15px 5px 15px; float: none; } 2. \GXModules\Meins\RabattAnzeige\Shop\xtcPrice\specials_xtcPrice.php mit PHP: <?php/* -------------------------------------------------------------- xtcPrice.php 2015-01-20 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] -------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(currencies.php,v 1.15 2003/03/17); www.oscommerce.com (c) 2003 nextcommerce (currencies.php,v 1.9 2003/08/17); www.nextcommerce.org (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: xtcPrice.php 1316 2005-10-21 15:30:58Z mz $) Released under the GNU General Public License --------------------------------------------------------------------------------------- */class specials_xtcPrice extends specials_xtcPrice_parent{ public function xtcFormatSpecial($p_products_id, $p_special_price, $p_old_price, $p_format, $p_return_array = 0) { if($p_format) { $t_price_html = ''; if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<span class="productOldPrice">' . $this->v_coo_language_text_manager->get_text('old_special_price') . ' ' . $this->xtcFormat($p_old_price, $p_format) . '</span><br />'; } if($this->checkAttributes($p_products_id, true)) { $t_price_html .= $this->checkAttributes($p_products_id, true) . ' ' . $this->xtcFormat($p_special_price, $p_format); } else { $t_price_html .= $this->v_coo_language_text_manager->get_text('new_special_price') .' ' . $this->checkAttributes($p_products_id) . ' ' . $this->xtcFormat($p_special_price, $p_format); } // Anfang Anpassung Prozente/Betrag bei Sonderpreis if(gm_get_conf('SHOW_OLD_SPECIAL_PRICE') == '1') { $t_price_html .= '<br /><span class="sale">' . $this->v_coo_language_text_manager->get_text('sonder_price_1') . ' ' .$this->xtcFormat(round($p_old_price-$p_special_price, 2) , $p_format) . $this->v_coo_language_text_manager->get_text('sonder_price_2') . ' '.'</span>'; }// Ende Anpassung Prozente/Betrag bei Sonderpreis $t_price_html = $this->sanitizePriceString($t_price_html); if($p_return_array == 0) { $this->dataCache->set_data($cacheKey, $t_price_html); return $this->dataCache->get_data($cacheKey); } else { $t_price_array = array(); $t_price_array['formated'] = $t_price_html; $t_price_array['plain'] = $p_special_price; $this->dataCache->set_data($cacheKey, $t_price_array); return $this->dataCache->get_data($cacheKey); } } else { $t_price = round($p_special_price, $this->currencies[$this->actualCurr]['decimal_places']); $this->dataCache->set_data($cacheKey, $t_price); return $this->dataCache->get_data($cacheKey); } }} und 3. \GXModules\Meins\RabattAnzeige\TextPhrases\german\price.lang.inc.php mit PHP: <?php/* -------------------------------------------------------------- price.lang.inc.php 2019-06-05 Gambio GmbH http://www.gambio.de Copyright (c) 2019 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( 'sonder_price_1' => ' Sie sparen ', 'sonder_price_2' => ' ! ',); Ein Angebot erstellt, alle Caches im Shop, per FTP und Browsercaches geleert. Wird nicht angezeigt.
Und du hast auch ein theme? Welche Shopversion? Nachtrag: ich habe gerade festgestellt, dass die Anzeige nicht erscheint, wenn man den alten Preis nicht anzeigen lässt. (UVP bei Sonderangeboten)
v4.2.1.0 und v4.3.2.0 und Malibu, UVP wird angezeigt. Kann es sein, dass der Block bei Malibu ein anderer ist?
Das hat nichts mit dem Block zu tun, sondern wird in der PHP erzeugt und mit den anderen Daten.... Och menno.... Da habe ich doch glatt den Ordner "Overloads" vergessen.... Meins/Angebote/Shop/Overloads/xtcPrice/
Du hast da ras Theme / Template in Fett, deshalb dachte ich, dass es nur darum geht. Den Ordner "Overload" habe ich da nicht so ganz wahrgenommen
Hallo klappt alles sehr gut, Mein Kunde möchte nun einen Countdown anzeigen lassen. Sowas wie "Dieses Angebot gilt noch: 24 Tage 05:27:02" wie schaut es aus wenn man hier auch einen Countdown anzeigen lassen will wie genau müsste ich vorgehen.
Das Modul vom @Kai Stejuhn hat neben dem Countdown eine Fülle an Funktionen für Angebote. Der Countdown geht wohl aktuell nur mit Tagen, aber wenn man nett fragt, vielleicht bekommt Kai das ja hin. (Link nur für registrierte Nutzer sichtbar.)
@Bernd [Gastro-Meurer.de] Was verfolge ich nicht weiter? Das Sonderangebote -Modul liegt in der Version 4.2 im Shop für Honeygrid-Template, Honeygrid-Theme und Malibu-Theme bereit. Auf Anfrage habe ich das Modul Ausnahmsweise auch mal für die 4.3 Honeygrid-Template-Version gestestet und bereitgestellt. Ich glaube Du verwechselst da etwas. Ich habe in der GX3-Version den Countdown als Einzelmodul gehabt und in der GX4-Version habe ich das mit dem Sonderangebote-Modul zusammen geführt und biete das nicht mehr als Einzelversion an. Also bitte ein wenig aufpassen, was hier verbreitet wird.
Ups, sorry @Kai Stejuhn da hatte ich wohl was anderes in Erinnerung. Ich meinte das Angebotsende. Und wie ich gerade gesehen habe hast du es ja jetzt. (Link nur für registrierte Nutzer sichtbar.)
@Kai Stejuhn In welchen Versionschritten aktualisiert du die Module? Frage für einen Kunden der hat 4.3.3. 0 aber Malibu Theme