Virtuemart 2.5.20 "inkl. 19% MwSt. zzgl. Versandkosten" wird nicht angezeigt

  • Hallo,
    das ist ja eine immer wieder auftauchende Frage: Wie schafft man es, "inkl. 19% MwSt. zzgl. Versandkosten" beim Preis anzeigen zu lassen. Eigentlich dachte ich, dass es mit einer der zahlreichen Erklärungen zu dieser Frage auch in deisem Fall klappen würde. Aber was ich bisher auch versucht habe, es ist mir nicht gelungen, irgendeine Veränderung unter oder neben dem Preis herbeizuführen.
    Bisher habe ich hier \components\com_virtuemart\views\productdetails\tm pl\default_showprices.php z. B. echo '<a href="http://Diesen Text musst Du mit Deinem Link ersetzen">zzgl. Versand </a>'; eingesetzt (auch wenn das noch nicht genau das ist, was ich mir vorstelle). Orientiert habe ich mich daran: http://www.joomlaportal.de/joo…2-versandkosten-link.html

    Wie gesagt, ändert das im Frontend nichts, sodass ich vermute, dass ich an den falschen Schrauben drehe, dass diese Dinge bei dieser virtuemart-Version wohl an einer anderen Stelle geregelt werden. Aber bloß, wo?
    Wer kann mir weiterhelfen?


    Grüße
    Thomas


    Hier verwendet:
    Joomla 2.5.20
    Virtuemart 2.0.26d
    Template Beeze5

  • Servus,


    wenn Deine Änderungen an der Stelle nichts bewirken, befindet sich evtl. ein Override in Deinem Template-Ordner unter
    /meintemplate/html/com_virtuemart/productdetails/.


    Such mal die letzen sieben Tage hier durch, da hatte ich eine Möglichkeit über CSS mit ::before genannt. So kann man auch einfach Texte einbringen ohne die php-Dateien verändern zu müssen.


    Kannst Du mir evtl. den Link von der Seite schicken, wenn ich Zeit finde, wollte ich mal ausprobieren, welche Version schneller zu hacken ist, die veraltete Joomla-Version, oder die veraltete VM-Version. Kleiner Scherz. ;-)


    Kein Scherz sind die Sicherheitslücken, die sind wirklich da. Ich würde dringend zu einem Update raten. Seite auf Testserver spiegeln, updaten, checken, ob alles funkt, und dann die Hauptseite updaten. Vorher natürlich immer Datenbank und Webspace sichern.


    So long
    Stefan

  • Hallo Stefan,
    nein, ein solches Override gibt es nicht. Dort finden sich nur com_contact und com_content.
    Ich habe mich jetzt aber mal selbst an solch einem Override versucht, allerdings wieder ohne irgendeine Veränderung. Und zwar so /meintemplate/html/com_virtuemart/productdetails/default_showprices.php, und hier habe ich dann die hervorgehobene Zeile eingesetzt. Wo liegt mein Fehler? Irgendwie muss das doch gehn.
    Mit deinen Hinweisen zu den veralteten Versionen hast du natürlich Recht. Im Moment ist diese Seite aber nicht online, sodass kein akuter Handlungsbedarf besteht. Das wird aber noch nachgeholt.



    echo $this->currency->createPriceDiv ('discountAmount', 'COM_VIRTUEMART_PRODUCT_DISCOUNT_AMOUNT', $this->product->prices);
    echo $this->currency->createPriceDiv ('taxAmount', 'COM_VIRTUEMART_PRODUCT_TAX_AMOUNT', $this->product->prices);
    echo '<a href="http://www.meine Seite/index.php/versand">zzgl. Versand </a>';
    $unitPriceDescription = JText::sprintf ('COM_VIRTUEMART_PRODUCT_UNITPRICE', JText::_('COM_VIRTUEMART_UNIT_SYMBOL_'.$this->product->product_unit));
    echo $this->currency->createPriceDiv ('unitPrice', $unitPriceDescription, $this->product->prices);
    }
    ?>



    Hallo,
    vielleicht wird so klarer, was ich falsch mache. Oben steht ja alles sehr klein und ist kaum lesbar. Das hier steht bei mir am Ende dieses Pfades: \components\com_virtuemart\views\productdetails\tm pl\default_showprices.php
    Eingesetzt habe ich: echo '<a style="font-size: 10px;" href="http://www.meineSeite/index.php/versand" <span>inkl. MwSt, zzgl. Versandkosten</span></a>';
    Es gibt in meinem Template, dem Beez5, keine Overrides, die sich darauf beziehen, jedenfalls nach meiner Meinung, nur com_contact und com_content, und die funktionieren, glaube ich, auch nur dann, wenn man im Backend das Template auf HtML5 umstellt.
    Wie auch immer. Wo bitte liegt der Fehler?
    Grüße
    Thomas
    <?php
    /**
    *
    * Show the product details page
    *
    * @package VirtueMart
    * @subpackage
    * @author Max Milbers, Valerie Isaksen
    * @link http://www.virtuemart.net
    * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved.
    * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
    * VirtueMart is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * @version $Id: default_showprices.php 6556 2012-10-17 18:15:30Z kkmediaproduction $
    */
    // Check to ensure this file is included in Joomla!
    defined ('_JEXEC') or die('Restricted access');
    ?>
    <div class="product-price" id="productPrice<?php echo $this->product->virtuemart_product_id ?>">
    <?php
    if (!empty($this->product->prices['salesPrice'])) {
    echo "<strong>" . JText::_ ('COM_VIRTUEMART_CART_PRICE') . "</strong>";
    }
    //vmdebug('view productdetails layout default show prices, prices',$this->product);
    if ($this->product->prices['salesPrice']<=0 and VmConfig::get ('askprice', 1) and isset($this->product->images[0]) and !$this->product->images[0]->file_is_downloadable) {
    ?>
    <a class="ask-a-question bold" href="<?php echo $this->askquestion_url ?>" rel="nofollow" ><?php echo JText::_ ('COM_VIRTUEMART_PRODUCT_ASKPRICE') ?></a>
    <?php
    } else {
    if ($this->showBasePrice) {
    echo $this->currency->createPriceDiv ('basePrice', 'COM_VIRTUEMART_PRODUCT_BASEPRICE', $this->product->prices);
    if (round($this->product->prices['basePrice'],$this->currency->_priceConfig['basePriceVariant'][1]) != $this->product->prices['basePriceVariant']) {
    echo $this->currency->createPriceDiv ('basePriceVariant', 'COM_VIRTUEMART_PRODUCT_BASEPRICE_VARIANT', $this->product->prices);
    }


    }
    echo $this->currency->createPriceDiv ('variantModification', 'COM_VIRTUEMART_PRODUCT_VARIANT_MOD', $this->product->prices);
    if (round($this->product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != $this->product->prices['salesPrice']) {
    echo '<span class="price-crossed" >' . $this->currency->createPriceDiv ('basePriceWithTax', 'COM_VIRTUEMART_PRODUCT_BASEPRICE_WITHTAX', $this->product->prices) . "</span>";
    }
    if (round($this->product->prices['salesPriceWithDiscount'],$this->currency->_priceConfig['salesPrice'][1]) != $this->product->prices['salesPrice']) {
    echo $this->currency->createPriceDiv ('salesPriceWithDiscount', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITH_DISCOUNT', $this->product->prices);
    }
    echo $this->currency->createPriceDiv ('salesPrice', 'COM_VIRTUEMART_PRODUCT_SALESPRICE', $this->product->prices);
    if ($this->product->prices['discountedPriceWithoutTax'] != $this->product->prices['priceWithoutTax']) {
    echo $this->currency->createPriceDiv ('discountedPriceWithoutTax', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITHOUT_TAX', $this->product->prices);
    } else {
    echo $this->currency->createPriceDiv ('priceWithoutTax', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITHOUT_TAX', $this->product->prices);
    }
    echo $this->currency->createPriceDiv ('discountAmount', 'COM_VIRTUEMART_PRODUCT_DISCOUNT_AMOUNT', $this->product->prices);
    echo $this->currency->createPriceDiv ('taxAmount', 'COM_VIRTUEMART_PRODUCT_TAX_AMOUNT', $this->product->prices);
    echo '<a style="font-size: 10px;" href="http://www.meineSeite/index.php/versand" <span>inkl. MwSt, zzgl. Versandkosten</span></a>';
    $unitPriceDescription = JText::sprintf ('COM_VIRTUEMART_PRODUCT_UNITPRICE', JText::_('COM_VIRTUEMART_UNIT_SYMBOL_'.$this->product->product_unit));
    echo $this->currency->createPriceDiv ('unitPrice', $unitPriceDescription, $this->product->prices);
    }
    ?>


    </div>

  • Hallo,
    vielleicht wird so klarer, was ich falsch mache. Oben steht ja alles sehr klein und ist kaum lesbar. Das hier steht bei mir am Ende dieses Pfades: \components\com_virtuemart\views\productdetails\tm pl\default_showprices.php
    Eingesetzt habe ich: echo '<a style="font-size: 10px;" href="http://www.xn--toms-tcher-feb.de/index.php/versand" <span>inkl. MwSt, zzgl. Versandkosten</span></a>';
    Es gibt in meinem Template, dem Beez5, keine Overrides, die sich darauf beziehen, jedenfalls nach meiner Meinung, nur com_contact und com_content, und die funktionieren, glaube ich, auch nur dann, wenn man im Backend das Template auf HtML5 umstellt.
    Wie auch immer. Wo bitte liegt der Fehler?
    Grüße
    Thomas
    <?php
    /**
    *
    * Show the product details page
    *
    * @package VirtueMart
    * @subpackage
    * @author Max Milbers, Valerie Isaksen
    * @link VirtueMart: Free e-commerce solution
    * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved.
    * @license The GNU General Public License v3.0 - GNU Project - Free Software Foundation GNU/GPL, see LICENSE.php
    * VirtueMart is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * @version $Id: default_showprices.php 6556 2012-10-17 18:15:30Z kkmediaproduction $
    */
    // Check to ensure this file is included in Joomla!
    defined ('_JEXEC') or die('Restricted access');
    ?>
    <div class="product-price" id="productPrice<?php echo $this->product->virtuemart_product_id ?>">
    <?php
    if (!empty($this->product->prices['salesPrice'])) {
    echo "<strong>" . JText::_ ('COM_VIRTUEMART_CART_PRICE') . "</strong>";
    }
    //vmdebug('view productdetails layout default show prices, prices',$this->product);
    if ($this->product->prices['salesPrice']<=0 and VmConfig::get ('askprice', 1) and isset($this->product->images[0]) and !$this->product->images[0]->file_is_downloadable) {
    ?>
    <a class="ask-a-question bold" href="<?php echo $this->askquestion_url ?>" rel="nofollow" ><?php echo JText::_ ('COM_VIRTUEMART_PRODUCT_ASKPRICE') ?></a>
    <?php
    } else {
    if ($this->showBasePrice) {
    echo $this->currency->createPriceDiv ('basePrice', 'COM_VIRTUEMART_PRODUCT_BASEPRICE', $this->product->prices);
    if (round($this->product->prices['basePrice'],$this->currency->_priceConfig['basePriceVariant'][1]) != $this->product->prices['basePriceVariant']) {
    echo $this->currency->createPriceDiv ('basePriceVariant', 'COM_VIRTUEMART_PRODUCT_BASEPRICE_VARIANT', $this->product->prices);
    }


    }
    echo $this->currency->createPriceDiv ('variantModification', 'COM_VIRTUEMART_PRODUCT_VARIANT_MOD', $this->product->prices);
    if (round($this->product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != $this->product->prices['salesPrice']) {
    echo '<span class="price-crossed" >' . $this->currency->createPriceDiv ('basePriceWithTax', 'COM_VIRTUEMART_PRODUCT_BASEPRICE_WITHTAX', $this->product->prices) . "</span>";
    }
    if (round($this->product->prices['salesPriceWithDiscount'],$this->currency->_priceConfig['salesPrice'][1]) != $this->product->prices['salesPrice']) {
    echo $this->currency->createPriceDiv ('salesPriceWithDiscount', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITH_DISCOUNT', $this->product->prices);
    }
    echo $this->currency->createPriceDiv ('salesPrice', 'COM_VIRTUEMART_PRODUCT_SALESPRICE', $this->product->prices);
    if ($this->product->prices['discountedPriceWithoutTax'] != $this->product->prices['priceWithoutTax']) {
    echo $this->currency->createPriceDiv ('discountedPriceWithoutTax', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITHOUT_TAX', $this->product->prices);
    } else {
    echo $this->currency->createPriceDiv ('priceWithoutTax', 'COM_VIRTUEMART_PRODUCT_SALESPRICE_WITHOUT_TAX', $this->product->prices);
    }
    echo $this->currency->createPriceDiv ('discountAmount', 'COM_VIRTUEMART_PRODUCT_DISCOUNT_AMOUNT', $this->product->prices);
    echo $this->currency->createPriceDiv ('taxAmount', 'COM_VIRTUEMART_PRODUCT_TAX_AMOUNT', $this->product->prices);
    echo '<a style="font-size: 10px;" href="http://www.xn--toms-tcher-feb.de/index.php/versand" <span>inkl. MwSt, zzgl. Versandkosten</span></a>';
    $unitPriceDescription = JText::sprintf ('COM_VIRTUEMART_PRODUCT_UNITPRICE', JText::_('COM_VIRTUEMART_UNIT_SYMBOL_'.$this->product->product_unit));
    echo $this->currency->createPriceDiv ('unitPrice', $unitPriceDescription, $this->product->prices);
    }
    ?>


    </div>

  • Hallo Milbo,
    danke für Deine Antwort.
    Wie und wo bitte kann ich denn die Anzeige der Versandkosten aktivieren? Die "Unendliche Geschichte" hat mir nicht weitergeholfen, da mir nicht klar ist, ob eine Einstellung im Backend gemeint ist, oder ob das anders geregelt werden soll.
    Mit der Zuhilfenahme der Kundenfelder zur Lösung des Problems werde ich mich noch beschäftigen. Mir ist noch nicht klar, ob diese Lösungsvorschläge am Ende zu dem Ergebnis führen werden, das mir vorschwebt: ich möchte, dass "inkl. Mwst., zzg. Versandkosten" (Versandskosten als Link zu den Versandkosten) in der Prodkuktübersicht und den Produktdetails steht (vielleicht auch im Warenkorb).
    Vielleicht kannst du mir ja auch die Frage beantworten, warum meine anderen Versuche nicht von Erfolg gekrönt waren. Überall liest man, dass es so geht. Warum nicht in meinem Fall?


    Grüße
    Thomas

  • Hallo Stefan,
    ich habe eine Versandart im Shop. Dort findet sich aber bei "Konfiguration" keine Möglichkeit, die Versankosten bei den Produktdetails anzeigen zu lassen, daher auch meine Frage, wo das eingestellt werden soll, siehe hier:

  • Sorry,


    einen Moment hatte ich vergessen, dass Du VM 2 verwendest, die Option gibt es erst unter VM 3, dort direkt unter Logo.
    Wenn Du eh 2.0.26d verwendest, versuch doch einfach ein Update auf VM 3 auf einer Spiegelung, oft geht das ohne große Probleme und die Vorteile von VM 3 sind in Deinem Fall wirklich nicht zu verachten.


    Wenn Du die oben angegebenen Datei verändert hast, sollte es funktionieren, da der Override vor allem anderen aktiv wird. Funktioniert es nicht, hast Du evtl. im falschen Installationsverzeichnis etwas geändert!?
    Wird ein Override im Template-Ordner erstellt, und dieses Template wird auch an der Stelle verwendet, wird die Änderung sofort sichtbar. Ist das nicht so, stimmt irgendwo etwas Grundlegendes mit der Installation nicht.


    Um da wirklich helfen zu können, müsste man schon in Deine Installation schauen können, per Forum fehlen da einfach zu viel Informationen.


    So long
    Stefan

  • Hallo,
    ja, mit einem selbsterstellten Feld könnte ich die gewünschte Anzeige in die Produktdetails bringen, aber nicht auf die Übersichtsseite, und auch nicht in den Warenkorb.
    Lassen wir mal das Override beiseite. Ich habe die Datei von hier, überall steht, dass man es so machen soll: \components\com_virtuemart\views\productdetails\tmpl\default_showprices.php
    Ich habe die Änderrung, die ich als Override versucht habe, auch direkt hier hineingeschrieben, ohne Erfolg. Ist es denn möglich, dass ausgerechnet bei meiner Version alles anders ist und ganz anders funktioniert? Wenn sich an dieser Stelle nichts ändern lässt, wo könnte ich es denn alternativ noch versuchen?
    Grüße
    Thomas

  • Hallo Milbo,
    danke für Deine Antwort. Und wie bekomme ich diese Angabe zu den Angeboten auf die Übersichtsseite? Sodass also bei jeden Angebot dieser Text steht? Ja, das mit dem Warenkorb ist überflüssig.
    Aber warum funktioniert es bei mir nicht, wenn ich es z. B. damit versuche: echo '<a style="font-size: 10px;" href="http://www.meineSeite/index.php/versand" <span>inkl. MwSt, zzgl. Versandkosten</span></a>';
    Weder wenn ich es direkt einfüge noch als override.


    Ich benutze Joomla 2.5.20,Virtuemart 2.0.26d und das
    Template Beez5.
    Grüße
    Thomas

  • Hallo,
    es funktioniert! Mit einem Override habe ich es endlich hinbekommen. Wie so oft befand sich das größte Problem vor dem Computer. Des Rätsels Lösung: Ich habe die ganze Zeit die falsche joomla-Installation bearbeitet:) - eine schon seit ewigen Zeiten inaktive Version, von der ich aber aus nicht nachvollziehbaren Gründen angenommen habe, sie sei die aktive. Tja, wer will, kann jetzt lachen.
    Nochmal danke an alle.
    Grüße
    Thomas