Jump to content

incl. MwSt weg - zzgl. Versand weg - Lieferzeit doppelt auf Startseite


Recommended Posts

Hallo zusammen,

 

bitte nicht den Kopf schütteln, falls ich eine simple Lösung nicht gefunden habe, alle Einträge zu dem Problem sind aber entweder alt oder angeblich gelöst.

 

Betreibe einen Shop Version 1.6.1.6 und Europäische Rechtssicherheit v.2.0.2. Seit kurzem tritt immer wieder ein alter Bekannter auf: 

 

Produkte auf der Startseite (Neu / Beliebt etc.) zeigen nicht mehr den Hinweis inkl. MwSt. zzgl. Versandkosten, statt dessen wird 2 mal untereinander "Lieferzeit 3-4 Tage" angezeigt. 

 

Auf der Produktdetailseite funktioniert die Anzeige aber wie sie soll.

 

Nach Cache löschen und Template kompilieren ist für kurze Zeit alles wieder dufte, nach ein paar Minuten: siehe oben. 

 

Wie kann es sein, dass der Fehler nur auf der Startseite auftritt, obwohl - wenn ich das richtig sehe - die gleiche Ersetzung vom Modul auch auf der Produktseite eingefügt wird? Ein js-Fehler, den ich nicht finde?

 

Bin für jeden Tipp dankbar und kann nicht glauben, dass ich der Einzige mit dem Problem bin...

 

FJS

Link to comment
Share on other sites

Glaub mir, den Kopf schütteln kann man nur immer wieder über die haarsträubenden Bugs im Modul Europäische Rechtssicherheit (AdvancedEUCompliance).

Leider kannst du hier ohne größere Eingriffe in den Quellcode gar nichts machen, denn dieser Fehler wird ausgelöst durch einen Hook namens hookDisplayProductPriceBlock.tpl, der sich in einem Unterverzeichnis des Moduls befindet. Er wird mehrfach hintereinander mit jeweils einem anderen Parameter aufgerufen:
 

{hook h="displayProductPriceBlock" product=$product type="price"}
{hook h="displayProductPriceBlock" product=$product type="unit_price"}
{hook h="displayProductPriceBlock" product=$product type='after_price'}

Die dahinterstehende Überlegung ist ja gar nicht schlecht: Warum soll man sich nicht ein bisschen Programmierarbeit einsparen? Das Ergebnis ist allerdings fatal, wie man hier sehen kann:  Presta_1616_Lieferzeit-Sammlung.pdf

(Ich habe es nämlich manchmal sogar auf 3 Anzeigen der Lieferzeit gebracht. :D )

 

Der Prestashop-eigene Cache ignoriert nämlich den Aufruf-Parameter (type = "...")  und speichert lediglich den ersten Aufruf dieses Hooks - den Rest erledigt dann der Browser-Cache. Gecached wird neben allgemeinen Dateiangaben folgendes (Auszug): 

<?php if ($_valid && !is_callable('content_577e25e6894880_32909292')) {function content_577e25e6894880_32909292($_smarty_tpl) {?>
    
    
    
    
    
    
    
    
    
    
    
            <div class="aeuc_delivery_label">
            Lieferzeit: 1-2 Werktage
        </div>
    <?php [spam-filter] ?>

Manchmal stimmt es auch. Aber so wird die korrekte Anzeige zum Glückspiel!

  • Like 1
Link to comment
Share on other sites

Wow, so schnell und so ausführliche Antwort. Danke!

 

Bedeutet dann als Workaround wohl am Ehesten: Anzeige der 3 Punkte im Rechtssicherheitsmodul ausschalten und an den entsprechenden Stellen direkt ins Template codieren. Unhübsch, wegen Upgradefähigkeit, aber ist ja eh nicht der einzige Eingriff ins Template.

 

Dann bin ich ja gespannt, an welchen Stellen Überraschungen aufploppen :rolleyes: 

 

Nochmals danke! 

Link to comment
Share on other sites

Hallo zusammen,

 

bitte nicht den Kopf schütteln, falls ich eine simple Lösung nicht gefunden habe, alle Einträge zu dem Problem sind aber entweder alt oder angeblich gelöst.

 

Betreibe einen Shop Version 1.6.1.6 und Europäische Rechtssicherheit v.2.0.2. Seit kurzem tritt immer wieder ein alter Bekannter auf: 

 

Produkte auf der Startseite (Neu / Beliebt etc.) zeigen nicht mehr den Hinweis inkl. MwSt. zzgl. Versandkosten, statt dessen wird 2 mal untereinander "Lieferzeit 3-4 Tage" angezeigt. 

 

Auf der Produktdetailseite funktioniert die Anzeige aber wie sie soll.

 

Nach Cache löschen und Template kompilieren ist für kurze Zeit alles wieder dufte, nach ein paar Minuten: siehe oben. 

 

Wie kann es sein, dass der Fehler nur auf der Startseite auftritt, obwohl - wenn ich das richtig sehe - die gleiche Ersetzung vom Modul auch auf der Produktseite eingefügt wird? Ein js-Fehler, den ich nicht finde?

 

Bin für jeden Tipp dankbar und kann nicht glauben, dass ich der Einzige mit dem Problem bin...

 

FJS

 

Hallo FJS,

 

ich habs aus Zeitgründen nicht getestet, probiere aber mal folgendes:

 

In der Datei:

/modules/advancedeucompliance/views/templates/hook/hookDisplayProductPriceBlock.tpl

findest du so ziemlich am Ende:

  {* "Delivery Estimation" Price Hook templating *}

    {if isset($smartyVars.after_price) && isset($smartyVars.after_price.delivery_str_i18n)}

        <div class="aeuc_delivery_label">

            {$smartyVars.after_price.delivery_str_i18n|escape:'htmlall'}

        </div>

    {/if}

   

 

 

ergänze das mit den roten Einfügungen

 

  {* "Delivery Estimation" Price Hook templating *}

    {nocache}

    {if isset($smartyVars.after_price) && isset($smartyVars.after_price.delivery_str_i18n)}

        <div class="aeuc_delivery_label">

            {$smartyVars.after_price.delivery_str_i18n|escape:'htmlall'}

        </div>

    {/if}

    {/nocache}

 

Dann Cache loschen u. testen

 

Grüsse

Whiley

Link to comment
Share on other sites

Gute Idee, aber so bringt das nicht viel, Jörg, weil du ja hier nur eine der möglichen Darstellungsformen abdeckt. Da wären dann des weiteren noch z.B. Ab-Preis, Gewicht, Mwst-Anzeige, Versandkostenlink. Das alles wird von hier aus gesteuert.

Wenn es so funktioniert, dann müsste der Smarty-Nocache vor dem ersten If-Clause beginnen und hinter dem letzten enden.

Link to comment
Share on other sites

So ganz genau wissen wir ja nicht wodurch der Fehler eigentlich erzeugt wird.

Imo tritt der Fehler  - auch bei häufig wiederholtem Aufruf der Listenansicht - niicht auf!. Erst wenn man einen Bestellvotgang durchführt kommt es zur der CACHE-veränderung.

 

Ich habe die Änderung - wie oben beschrieben - mal in den Demo-Shop eingebaut und beobachte was passiert.

Das Modul blockbestsellers scheint sich nicht mit der Änderung zu vertragen ansonsten sieht es auf den ersten Blick garnicht so schlecht aus.

  • Like 1
Link to comment
Share on other sites

Update:

Ein vielfacher Aufruf der Listenansicht scheint den Fehler definitiv nicht auszulösen (Ich habe gerade eine Shopstartseite über eine Schleife 1000 mal aufgerufen ohne das ein Fehler auftrat.

Wenn ich eine einzelne Bestellung durchziehe tritt der Fehler unmittelbar danach im Modul blockbestsellers (Verkaufshits) auf!

 

Nach deaktivieren des Moduls blockbestsellers kann ich den Fehler (bisher) nicht reproduzieren. In dem Zusammenhang noch interessant, bei einem unser Kundenshops (aktuelle PS Version) trat der Fehler noch nie auf, dort ist auf der Startseite nur das Listenanzeige Modul blocknewproducts (also nicht blockbestsellers) aktiviert.

Link to comment
Share on other sites

Im Produktivsystem habe ich das Glück, dass der Fehler "nur" beim Aufruf des Hooks in product-list.tpl auftritt und nicht in product.tpl. Da Gewicht und Downloadprodukte derzeit keine Rolle spielen, habe als quick-and-dirty Lösung "incl. MwSt", den Versandkostenlink und die Lieferzeit in der product-list.tpl hart codiert, an allen anderen Stellen werden diese aus AdvancedEUCompliance über den Hook eingespielt.

 

Vielen Dank für die vielen Ideen und Tipps bisher, werde am Wochenende dran arbeiten und auch nochmal testen, ob ein Zusammenhang mit dem Update von Produkten besteht, da ich per Cronjob die Bestände regelmäßig aktualisiere und der Fehler auch im Testsystem ohne Bestellungen und ohne weiter "fremde" Zugriffe auf die Seite auftritt.

 

Es bleibt spannend!  

Link to comment
Share on other sites

Update:

Ein vielfacher Aufruf der Listenansicht scheint den Fehler definitiv nicht auszulösen (Ich habe gerade eine Shopstartseite über eine Schleife 1000 mal aufgerufen ohne das ein Fehler auftrat.

Wenn ich eine einzelne Bestellung durchziehe tritt der Fehler unmittelbar danach im Modul blockbestsellers (Verkaufshits) auf!

 

Nach deaktivieren des Moduls blockbestsellers kann ich den Fehler (bisher) nicht reproduzieren. In dem Zusammenhang noch interessant, bei einem unser Kundenshops (aktuelle PS Version) trat der Fehler noch nie auf, dort ist auf der Startseite nur das Listenanzeige Modul blocknewproducts (also nicht blockbestsellers) aktiviert.

 

 

Kann ich nicht bestätigen. Nach Einsatz des Befehls {nocache} für den gesamten Inhalt der Datei landet diese zwar weiterhin in PrestaShops Cache, aber in voller Länge und nicht wie oben beschrieben. Der Fehler trat seitdem nicht mehr auf, übrigens auch nicht beim Modul Verkaufshits.

 

Dass der Fehler auch dort auftreten konnte, war klar, denn auch dieses Modul greift in Zeile 53 der blockbestsellers.php auf diesen Hook zu:

{hook h="displayProductPriceBlock" product=$product type="price"}

Aber man wird wohl noch öfter manuelle Änderungen einpflegen müssen, denn viel an Bugfixes erwarte ich eigentlich nicht mehr, da AdvancedEUCompliance ja für 1.7 anscheinend nicht mehr weiterentwickelt wird, wie der deutsche Country Manager hier so beiläufig erwähnt. Leider scheint die in Rekordzeit von etwa 3 Monaten entwickelte neue deutsche Anpassung von Patworx (Amazon Payments) kein Open Source zu sein. Hoffentlich lohnt sich die Geheimniskrämerei, denn die bisherigen deutschen Anpassungen reiften eigentlich durch die kritische Begleitung der Community zur Praxistauglichkeit.

Link to comment
Share on other sites

  • 2 months later...

Hallo, ich habe auch dieses Problem. Ich konnte es reproduzieren durch den einfachen login in den Shop -> Fehler in der Ansicht im Modul "featured products" beim Logout war dieser prompt wieder weg? Die "nocache lösung" machte keinen Unterschied. 

 

Hat jemand eine andere Idee ???

Link to comment
Share on other sites

  • 4 weeks later...
  • 4 weeks later...

Da mir kürzlich noch bei Github erklärt worden ist, das Entwicklerteam benötige mehr Input, um den Fehler reproduzieren zu können, habe ich jetzt mal einen anderen Ansatz versucht in Whileys Testshop. Bis jetzt jedenfalls trat bei mir der Fehler mit den doppelten Anzeigen nicht mehr auf.

Vielleicht testet ihr ja auch mal kräftig, bevor ich hier womöglich eine Lösung poste, die nicht stimmt.

Link to comment
Share on other sites

So ganz klar ist ja nicht unter welchen Bedingungen der Fehler überhaupt auftritt, imo tritt er nur bei installiertem AEUC und nur im Modul homefeatured products auf (zumindest nach der Nocache-Änderung) und das auch sehr selten - wohl im Zusammenhang mit einer Bestellung.

 

Also heißt es zunächst mal weiter beobachten.

 

Grüsse

Whiley

 

EDIT

Habe gerade den Fehler in einem anderen Shop, die Feststellung, daß er nur bei homefeatured products auftritt muß ich revidieren, allerdings nur auf der HomePage , nicht bei den Kategorien und nur solange man nicht eingeloggt ist!

Link to comment
Share on other sites

Der besteht darin, dass ich alle Lösungsansätze des PrestaShop-Teams, die im Nachfolgemodul ps_legalcompliance angewandt wurden, verworfen habe und die Hauptdatei - advancedeucompliance.php bzw. ps_legalcompliance.php (ab PrestaShop 1.7), selbst modifiziert habe. Bei letzterem Modul müssen dann aber noch zusätzlich 5 überflüssige Files entfernt werden - bei AEUC geht es daher noch leichter vonstatten.

Ich werde selbst am Wochenende noch einige Testläufe machen und dann das gepatchte Modul hier zum Download freigeben.

  • Like 1
Link to comment
Share on other sites

Mich macht das auch grad ziemlich nervös.... Wie ist denn der Lösungsansatz?

 

Der besteht darin, dass ich alle Lösungsansätze des PrestaShop-Teams, die im Nachfolgemodul ps_legalcompliance angewandt wurden, verworfen habe und die Hauptdatei - advancedeucompliance.php bzw. ps_legalcompliance.php (ab PrestaShop1.7), selbst modifiziert habe. Bei letzterem Modul müssen dann aber noch zusätzlich 5 überflüssige Files entfernt werden - bei AEUC geht es daher noch leichter vonstatten. Auf die NoCache-Lösung habe ich verzichtet.

Ich werde selbst am Wochenende noch einige Testläufe machen und dann das gepatchte Modul hier zum Download freigeben.

Link to comment
Share on other sites

Ich habe gestern mal (wegen Einpflegens diverser neuer Produkte) den Smarty-Cache auf off gelassen, da hat alles ziemlich gut funktioniert, bis auf den Speed des Shops, der war dadurch schlechter.

 

Also nach getaner Arbeit den Cache auf On gestellt, und schon ging es los, daß bei Änderungen der Shopsprache die Mwst.- und Lieferzeitangaben in der erstgewählten Sprache bleiben, also z.B. englische Shopsprache und deutsche Preisangabe, was ja auch nicht so toll ist. Nach Löschen des Cache ging es erstmal auch nicht besser, ich vermute, daß der Shop also dennoch noch irgendwelche Cachedaten speichert und diese erstmal munter weiterverwendet, nach und nach wird es dann besser.

 

Also absolut nicht reproduzierbar, was da passiert.

 

Ich komme frisch auf die Seite, alles soweit okay, Dann wechsle ich z.B. auf ein Produkt, komme also auf die Seite, wo es im Detail angezeigt wird, und wechsle da die Sprache, wird dort auch alles richtig angezeigt. Gehe ich nun auf den Home-Button, steht alles in der gewählten Sprache, nur bei der Preisanzeige hat er sich die eingangs angezeigte Sprache gemerkt und zeigt diese dann auch so an.

 

Hier mal der Link zu dem Shop, der zum Glück noch nicht produktiv ist :) : Shop

 

PS: Mit angeschaltetem Smartcache verhält sich anscheinend alles gut, so ist es jetzt mal eingestellt, allerdings geht die Ladezeit der Seite auf ca. 1 Sek hoch, mit Smartcache liegt sie bei ca. 0,5-0,6 Sekunden. Die Usability bleibt dennoch so erhalten, daß man das verschmerzen könnte....

Edited by Claudiocool (see edit history)
Link to comment
Share on other sites

Nö, falls du den Cache jetzt nicht gerade abgestellt hast! Ich kann in deinem Shop die Sprachen hin- und herschalten. Sie werden sofort aktualisiert. Das dürfte wohl einzig und alein ein Problem deines Browsers sein.

Übrigens solltest du den Tippfehler in deinem Link korrigieren. Sonst bist du nämlich nicht zu finden. :rolleyes:

 

Viel putziger finde ich den Seitenquelltext:

<script type="text/javascript">/* <![CDATA[ */;var CUSTOMIZE_TEXTFIELD=1;var FancyboxI18nClose='Schließen';var FancyboxI18nNext='Weiter';var FancyboxI18nPrev='Zurück';var ajax_allowed=true;var ajaxsearch=true;var baseDir='http://www.cdfgroup.de/onlineshop/';var baseUri='http://www.cdfgroup.de/onlineshop/';var blocksearch_type='top';var comparator_max_item=3;var comparedProductsIds=[];var contentOnly=false;var currency={"id":1,"name":"Euro","iso_code":"EUR","iso_code_num":"978","sign":"\u20ac","blank":"1","conversion_rate":"1.000000","deleted":"0","format":"2","decimals":"1","active":"1","prefix":"","suffix":" \u20ac","id_shop_list":null,"force_id":false};var currencyBlank=1;var currencyFormat=2;var currencyRate=1;var currencySign='€';var customizationIdMessage='Benutzereinstellung Nr.';var delete_txt='Löschen';var displayList=false;var freeProductTranslation='Gratis!';var freeShippingTranslation='versandkostenfrei';var generated_date=1478441018;var hasDeliveryAddress=false;var highDPI=false;var homeslider_loop=1;var homeslider_pause=3000;var homeslider_speed=500;var homeslider_width=779;var id_lang=2;var img_dir='http://www.cdfgroup.de/onlineshop/themes/default-bootstrap/img/';var instantsearch=false;var isGuest=0;var isLogged=1;var isMobile=false;var max_item='Sie können nicht mehr als 3 Artikel zum Produktvergleich hinzufügen';var min_item='Bitte wählen Sie mindestens einen Artikel.';var page_name='index';var placeholder_blocknewsletter='Geben Sie Ihre E-Mail-Adresse ein';var priceDisplayMethod=0;var priceDisplayPrecision=2;var quickView=true;var removingLinkText='Diesen Artikel aus meinem Warenkorb entfernen';var roundMode=2;var search_url='http://www.cdfgroup.de/onlineshop/de/suche';var static_token='6820985d567dbbd29c9e87de2c5bf97a';var toBeDetermined='noch festzulegen';var token='36f3907162b298b1ef7f0defd38eb49b';var usingSecureMode=false;/* ]]> */</script> <script type="text/javascript" src="http://www.cdfgroup.de/onlineshop/themes/default-bootstrap/cache/v_117_9635384ec8e3b84b6c28444d7d234d93.js"></script> <script type="text/javascript">/* <![CDATA[ */;function updateFormDatas(){var nb=$('#quantity_wanted').val();var id=$('#idCombination').val();$('.paypal_payment_form input[name=quantity]').val(nb);$('.paypal_payment_form input[name=id_p_attr]').val(id);}$(document).ready(function(){if($('#in_context_checkout_enabled').val()!=1){$('#payment_paypal_express_checkout').click(function(){$('#paypal_payment_form_cart').submit();return false;});}var jquery_version=$.fn.jquery.split('.');if(jquery_version[0]>=1&&jquery_version[1]>=7){$('body').on('submit',".paypal_payment_form",function(){updateFormDatas();});}else{$('.paypal_payment_form').live('submit',function(){updateFormDatas();});}function displayExpressCheckoutShortcut(){var id_product=$('input[name="id_product"]').val();var id_product_attribute=$('input[name="id_product_attribute"]').val();$.ajax({type:"GET",url:baseDir+'/modules/paypal/express_checkout/ajax.php',data:{get_qty:"1",id_product:id_product,id_product_attribute:id_product_attribute},cache:false,success:function(result){if(result=='1'){$('#container_express_checkout').slideDown();}else{$('#container_express_checkout').slideUp();}return true;[spam-filter]);}$('select[name^="group_"]').change(function(){setTimeout(function(){displayExpressCheckoutShortcut()},500);});$('.color_pick').click(function(){setTimeout(function(){displayExpressCheckoutShortcut()},500);});if($('body#product').length>0)setTimeout(function(){displayExpressCheckoutShortcut()},500);var modulePath='modules/paypal';var subFolder='/integral_evolution';var baseDirPP=baseDir;var fullPath=baseDirPP+modulePath+subFolder;var confirmTimer=false;if($('form[target="hss_iframe"]').length==0){if($('select[name^="group_"]').length>0)displayExpressCheckoutShortcut();return false;}else{checkOrder();}function checkOrder(){if(confirmTimer==false)confirmTimer=setInterval(getOrdersCount,1000);}function getOrdersCount(){$.get(fullPath+'/confirm.php',{id_cart:'45'},function(data){if((typeof(data)!='undefined')&&(data>0)){clearInterval(confirmTimer);window.location.replace(fullPath+'/submit.php?id_cart=45');$('p.payment_module, p.cart_navigation').hide();[spam-filter]);[spam-filter]);;var $back_arrow_img='/onlineshop/modules/backarrow/views/img/arrow.gif';var $back_arrow_text='Nach oben';var $back_arrow_color='#ef0e0e';;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;$(document).ready(function(){if(!!$.prototype.fancybox)
$("a.iframe").fancybox({"type":"iframe","width":600,"height":600});});;function setcook(){var nazwa='cookie_ue';var wartosc='1';var expire=new Date();expire.setMonth(expire.getMonth()+12);document.cookie=nazwa+"="+escape(wartosc)+";path=/;"+((expire==null)?"":("; expires="+expire.toGMTString()))}
function closeUeNotify(){$('#cookieNotice').animate({bottom:'-200px'},2500,function(){$('#cookieNotice').hide();});setcook();};/* ]]> */</script>

Ich glaube, da läuft bei dir so einiges nicht ganz rund. In diesem Fall ist es das Cookie-Modul.

Aber du scheinst auch noch Javaskripts im Einsatz zu haben, die im Standard-Template nicht vorkommen.

Link to comment
Share on other sites

Den Cache habe ich gerade abgeschaltet, weil er damit die Anzeige korrekt liefert. Wenn man den einschaltet, kommen die ganzen Preisanzeigen durcheinander. Das Cookie-Modul habe ich mal vor ein paar Tagen installiert (von MyPresta.eu),

Bei den Javascripts vermute ich mal, dass du den Up-Button meinst, den habe ich gesetzt, um das nervige hochscrollen zu müssen, etwas zu entschärfen.

 

Tippfehler ist korrigiert :)

Edited by Claudiocool (see edit history)
Link to comment
Share on other sites

Welchen Cache hast du denn abgeschaltet?

 

Ich habe jetzt hin- und hergetestet, es ist wirklich nur der Smarty-Cache! Es muss kein Jota am Modul geändert werden - zumindest nicht für diesen Fehler.

 

Du kannst also die CCC-Cache-Optionen nach Belieben setzen, nur der Cache in der Sektion

Erweiterte Einstellungen -> Leistung -> Smarty

muss auf NEIN stehen.

Geschwindigkeitseinbußen sollten sich dadurch eigentlich nicht ergeben. Ich habe sogar den Eindruck, es läuft etwas schneller.

 

Oder du machst das, was Whiley auch im Testshop gemacht hat und ich hier nochmal beschrieben habe: https://github.com/PrestaShop/advancedeucompliance/pull/54#issuecomment-258967389

Du änderst die Kachelansicht in LIstenansicht auf der Startseite, indem du "grid" display in "list" änderst sowohl in der product-list.tpl als auch in der /js/global.js im Template-Verzeichnis.

Link to comment
Share on other sites

ok, die Änderung hab ich da reingesetzt, jetzt passiert da folgendes:

 

In der Kachelansicht, die man beim ersten Betreten des Shops in einer Kategorie (auf der Startseite stimmts komischerweise) angezeigt kriegt, fehlen dann in der 2. Reihe die Plätze 4 und 5, geht man dann auf Listenansicht, ist es okay, allerdings kommt man dann nicht mehr zur Kackel zurück.

 

In der JS war ich jetzt nicht so ganz sicher, ob das Grid überall geändert werden muss, oder nur in dem einen Ausdruck

 

Im JS wird die Umschaltung gemacht (KAchel/Liste) und im product-list.tpl. die Anzeige aufgerufen, oder?

 

Mit den Änderungen würge ich quasi die Kachelanasicht ab, bzw. da sie ja per Default gesetzt zu sein scheint, seh ich erst den Bug mit dem fehlenden Artikel 4 und 5, dann schelte ich auf Liste um und kriege es korrekt angezeigt, kann dann aber nicht mehr zurück auf die Kachel, finde aber oben die beiden Buttons zum Einstellen.

 

Mit der Änderung in der tpl verschwindet aber zumindest der Anzeigefehler (Mwst/Lieferzeit/Versandkosten)

 

SmartyCache ON: Ladezeit ca. 0,5s

SmartyCache OFF: Ladezeit ca. 1s

Edited by Claudiocool (see edit history)
Link to comment
Share on other sites

Der besteht darin, dass ich alle Lösungsansätze des PrestaShop-Teams, die im Nachfolgemodul ps_legalcompliance angewandt wurden, verworfen habe und die Hauptdatei - advancedeucompliance.php bzw. ps_legalcompliance.php (ab PrestaShop1.7), selbst modifiziert habe. Bei letzterem Modul müssen dann aber noch zusätzlich 5 überflüssige Files entfernt werden - bei AEUC geht es daher noch leichter vonstatten. Auf die NoCache-Lösung habe ich verzichtet.

Ich werde selbst am Wochenende noch einige Testläufe machen und dann das gepatchte Modul hier zum Download freigeben.

Nachdem die Lösung mit list statt grid etwas "dirty" zu sein scheint, habe ich es wieder zurückgesetzt und den smarty-Cache wieder ausgeschaltet, hier geht mir die usability dann doch vor Ladezeit....

 

Ich vermute, man kann da anderswo auch noch fündig werden?

Link to comment
Share on other sites

Wir sind jetzt an dem Punkt, wo ich Bedenken bekomme, den Presta zu nutzen. Bis jetzt hängen ca. 100 Stunden drin, er läuft zwar, aber mich ärgert das mit dem Cache, den ich so nicht nutzen kann, schon etwas, vor allem, weil ich Bedenken habe, was die Ladezeit macht, wenn da mal 1000 Produkte drin sind.

 

Diese List/Grid-Variante scheidet eigentlich aus, weil die Kachelansicht im späteren Template besser zur Geltung kommt, diese also in jedem Fall bleiben sollte. Und was Whiley in seinem Testshop gemacht hat, erschließt sich mir auch nicht so recht, weil ich nicht sehe, wie man diese Aufteilung in die einzelnen Files hinbekommt, und wie man die dann realisiert. Hat die schon mal jemand eingebaut und getestet?

 

Auch diverse Änderungen in der PHP.INI hatten hier auch keine Effekte, die den Bug eliminieren.

 

Ich verstehe es nach wie vor so, daß der beim erstmaligen Aufruf die Routinen anspringt und entsprechend in den Cache lädt, da ist auch alles okay, aber alle nachfolgenden Änderungen (Sprache, User-Log-in/-out) bewirken, dass die Mwst/Lieferzeit/Versandkosten-Geschichte nicht erneuert wird und weiter aus dem Cache gefüttert wird, wobei dann bei geänderten Voraussetzungen das Ganze ins Leere läuft und nur die nackte Lieferzeitangabe doppelt stehen bleibt. Da stellt sich dann aber noch die Frage, ob der Cache nicht bei genau diesen Events geleert werden müsste... Vermutlich dann aber wieder auf Kosten der Performance, wenn entsprechend viele Leute online sind und gleichzeitig irgendeine der genannten Aktionen ablaufen.

 

Sorry für meinen Pessimismus, aber als langjährig leidgeprüfter OS-Commerce-User steht man diesen Projekten immer mit einer ordentlichen Portion Skepsis gegenüber.

Edited by Claudiocool (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Ich hab mittlerweile alle Caches aus, damit läuft der Shop technisch rund, irgendwie beissen sich da sonst die diversen Module... Schade, aber die Usability geht eben vor. Irgendwie hab ich immer noch ein wenig Bauchweh, den Shop on Air gehen zu lassen, andererseits ist er besser als der bisherige.

Link to comment
Share on other sites

  • 3 weeks later...

Ich habe die letzten Wochen den nocache Trick genutzt. Seit gestern aber ist der bug wieder da. hookDisplayProductPriceBlock.tpl ist aber unverändert, dh. nocache ist noch drinnnen.

​Allerdings wernden Lieferzeiten nun drei mal angezeigt! Schade, dass das Fehlerverhalten hier nicht weiter verfolgt wurde.


​ Eleazar schrieb weiter oben mal:

Der besteht darin, dass ich alle Lösungsansätze des PrestaShop-Teams, die im Nachfolgemodul ps_legalcompliance angewandt wurden, verworfen habe und die Hauptdatei - advancedeucompliance.php bzw. ps_legalcompliance.php (ab PrestaShop1.7), selbst modifiziert habe. Bei letzterem Modul müssen dann aber noch zusätzlich 5 überflüssige Files entfernt werden - bei AEUC geht es daher noch leichter vonstatten. Auf die NoCache-Lösung habe ich verzichtet.

Ich werde selbst am Wochenende noch einige Testläufe machen und dann das gepatchte Modul hier zum Download freigeben.

 

Link to comment
Share on other sites

Das ist richtig Whiley,

 

aber Renderspeed einer Seite ist heut zu tage ein Kriterium. Nicht nur für Google.

Ich bin kein Google Analytics Fachmann aber ich habe mir dort eine Ansicht gebastelt für Performancefragen. Average Response time und PageLoadSpeed sind one SmartyCache bei uns 20% höher.

 

Rainer hat in diesem Thread gesagt, dass der SmartyCache nur! die Startseite cachen würde. Habe ich noch gehört aber diese ist nun mal besonders wichtig.

 

Ich habe im GIT Repo einen angeblichen FIX gefunden, der die JS des AEUC Moduls ändert. Bei mir hat er nichts gebracht.

 

Wichtig ist hier. Wir fahren seit 10 Tagen 1.6.10.

Das Problem mit der doppelten Lieferzeit ist Vorgestern wieder aufgetreten. Wie aus dem Nichts!

Dieses mal wird die Lieferzeit dreimal angezeigt ?!

 

Ich hatte vor Wochen den NoCache Trick angewendet und der hatte bis Vorgestern funktioniert. So weit ich weiß, wurde bei uns im Shop nichts geupdatet.

Ich frage mich, was der Auslöser des Problems wirklich ist?

Ist es 100% bekannt?

Weil wir verkaufen reichlich zur Zeit täglich. Sollte der Bug nach einem Kauf auftreten wie öfters vermutet, wäre er in den letzten Wochen bei uns schon wieder aufgetreten.Bzw. auch wiederum nicht, da wir ja den NOCACHE Trick nutzen. Aber dieser wird plötzlich nicht mehr respektiert?

 

Es schein einen weiteren Auslöser des Bugs zu geben.

 

Weiterhin wird es wohl kaum nur gefühlte 5 Prestashops in Deutschland geben, die dieses Problem haben. Folglich scheint es eine Kombination von installierten Modulen und Anderem zu sein, die zu dem Problem führt oder`?

 

Kann es heir Zusammenhänge zu Bezahlmodulen wie Amazon oder PayPal geben? Weil die haben wir in den letzten Tagen installiert.

 

Ich würde mich freuen, wenn wir das Problem doch noch eingrenzen und lösen könnten ohne auf SmartyCache zu verzichten.

 

Vielen Dank

Link to comment
Share on other sites

Hallo Boris,

ich vermute mal, dass die AEUC-Entwickler die Ursache immer noch nicht selbst kennen, denn für das Nachfolgemodul unter 1.7 haben sie lediglich einen Trick angewandt, indem sie für jeden einzelnen Fall einen Hook setzen. Programmiertechnisch wohl eher ein Armutszeugnis, soll aber funktionieren. Ich habe es selbst noch nicht ausprobiert, denn ich halte PrestaShop 1.7 noch für so unausgereift, dass man es unmöglich im Live-Betrieb einsetzen kann.

 

Die Änderungen kannst du im Prinzip auch in AEUC einbauen, schau dir deshalb mal ps_legalcompliance für 1.7 auf Github an: https://github.com/PrestaShop/ps_legalcompliance/tree/master/views/templates/hook

Denn mit einem Fix für 1.6 rechne ich in diesem Fall inzwischen nicht mehr. Das Problem ist ja dem Entwicklerteam seit langem bekannt.

Ansonsten bleibt immer noch als Alternative, einen Cronjob zur regelmäßigen Cache-Löschung einzurichten, wie Whiley vorgeschlagen hat.

Ich will ja nicht immer an den alten Merksatz "Never change a runnng system" erinnern ... aber wärest du bei 1.6.0.14 geblieben, hättest du solche Probleme heute nicht. :ph34r:

 

Hast du eigentlich keine Probleme mit PHP 7.0? Oder mit dem neuesten Paypal-Modul?

Link to comment
Share on other sites

Danke Dir für die Erklärungen. Jetzt weiß ich, was der Status Quo ist und Du hast mir sogar einen möglichen Lösungs weg aufgeführt.

 

Ich werde mir das ansehen mit den hooks. Immerhin habe ich gerade 2 Stunden aufgewant, mir alle Dateien des "Login und Zahle mit Amazon" Moduls anzusehen, da dieses Modul auf mir unbekannte Weise die Buttons positioniert. JS wahrscheinlich aber hooks glaube ich nicht. Ich hatte in der in Frage kommenden TPL mal alle {HOOK s} auskommentiert und die LoginButtons wurden weiterhin angezeigt. Leider an unpassenden Stellen...

 

Zu PayPal und PHP7. Tja, was meinst Du genau? Auf was soll ich achten? Denn ja, ich hatte in den letzen Tagen öfters Ungereimtheiten im Shop.

Link to comment
Share on other sites

Das Paypal-Modul lief das letzte Mal unter 1.6.0.x einigermaßen stabil. Das neueste Release ist nicht empfehlenswert.

PHP 7 steigt spätestens bei den Übersetzungen aus, da es die max_input_vars auf 1000 limitiert. Das ist auch ein Hemmschuh in anderen Bereichen.

Auskommentiert? Was genau? Amazon Payments? Ändert das Modul denn die tpl-Dateien? Das würde mich jetzt aber wundern.

Link to comment
Share on other sites

Was es so schwierig macht den Fehler zu finden, ist - zumindest für mich - daß die Fehlerauslösung nicht eindeutig ist und somit nicht sicher reproduziert werden kann.

 

Gibt es denn inzwischen Beobachtungen oder Erkenntnisse in welcher Konstellation/Situation derFehler häufig oder sogar immer auftritt?

 

Grüsse

Whiley

Link to comment
Share on other sites

Bei mir ist es -wie gesagt- dann, wenn man die Sprache umschaltet. Solange der Shop ohne Cache betrieben wird, ist das okay, allerdings sind dann die Ladezeiten nicht gerade berauschend.

Für die Usability ist die Ladezeit erträglich, also ok, aber beim Crawling passiert es regelmäßig, dass Google gelangweilt wieder abzieht :)

Link to comment
Share on other sites

  • 3 weeks later...

@eleazar, den Smarty Cache abzuschalten war der beste Tip jemals! Da wäre ich nie im Leben drauf gekommen. Ich habe tagelang gesucht, denn immer wenn ich MwSt. im EU Legal aktiviert habe, konnte ich weder meinen Homeslider anpassen, noch dass sich die Startseite randommäßig verändert hätte, danke :-)

 

Frohes neues Jahr,

Vivi

Link to comment
Share on other sites

wo müsste man denn in der hookDisplayProductPriceBlock.tpl die nocache-Anweisungen setzen? Ich habe da gerade mal etwas rumgespielt, aber keinen Effekt festgestellt, der hier irgendwas verändert.

 

Der Shop läuft mittlerweile ja (leider) produktiv, ohne den Smarty sogar stabil und sicher, aber dieses letzte "Feature" würde ich dann doch noch gerne geradebiegen, um die Performance des Servers hier auch zu nutzen.

Link to comment
Share on other sites

  • 1 month later...

Sodele..... ein Fix wird da wohl keiner mehr kommen.

 

Jetzt bin ich eben an den Server gegangen und habe den optimiert. Aktuell läuft jetzt PHP 7.0.15 (Apache mit Nginx) und dazu habe ich den Opcache eingerichtet. Jetzt sind die Ladezeiten mit abgeschalteten Caches so wie vorher mit eiggeschalteten, Ladezeit gemäß Seobility-Check liegt jetzt bei 0,4-0,5 Sekunden, der Shop läuft damit absolut stabil und flüssig.

 

Das ganze Wochenende noch damit zugebracht, die Mailer-Settings so zu optimieren, dass auch die kritischten Mailserver unsere Mails zustellen, jetzt bin ich absolut zufrieden mit der Sache.

Link to comment
Share on other sites

  • 9 months later...

Ich hole diesen Thread mal wieder hoch, da sich leider immer noch nichts getan hat und wohl von seiten PrestaShops in 1.6.1 auch definitiv nichts mehr getan werden wird. Ich hatte ja mal die Hoffnung, mit dem Fork thirty bees würde etwas frischer Wind einziehen, aber jetzt werden anscheinend dort statt dessen alte Hüte wieder salonfähig gemacht. Die neueste Aktion ist die Modifikation von AEUC mithilfe von Whileys Lösung mit der Anweisung {nocache}, die ich seinerzeit auch bei Github vorgeschlagen hatte:

https://github.com/PrestaShop/advancedeucompliance/pull/54

Die hat sich aber als unzureichend erwiesen, denn diese Mitteilung vom vergangenen Jahr ist leider kein Einzelfall geblieben: https://www.prestashop.com/forums/topic/541316-incl-mwst-weg-zzgl-versand-weg-lieferzeit-doppelt-auf-startseite/?do=findComment&comment=2469563

Gelesen hat das bei thirty bees aber vermutlich keiner, nicht mal der einzige deutschsprachige Entwickler: Diese Macke im AEUC-Modul

Also bleibt im Moment den Nutzern von 1.6.1x samt seinen Forks nichts anderes übrig, als weiterhin den Smarty-Cache zu deaktivieren. Bei der Vorgänger-Version Eu legal (bis PS Version 1.6.0.14), die diesen Hook erstmals eingeführt hatte, trat der Cache-Fehler übrigens noch nicht auf, weil hier bei Mehrfachaufrufen des Hooks jeweils ein Cache-Key gesetzt wurde. Das haben die Entwickler von AEUC vermutlich übersehen. :)

Link to comment
Share on other sites

  • 2 months later...

@eleazar Vielen Dank für das Update! Was aber in dem Modul immer noch nicht funktioniert, ist die Sache mit dem iframe und den Versandkosten...Kann es sein, dass die Funktion beim Update auf 1.6.1.17 verloren gegangen ist? Ich habe noch einen 1.6.1.0er shop in dem das noch überall funktioniert...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...