How can we help you?
Some of our questions and answers
This is a short list of some questions and answers. Type one or more keywords above to find what your are looking for.
Meine Umsatzsteuer-Identifikationsnummer lautet FR86838143592
Ich bin Freiberufler in Frankreich und zahle als Kleinunternehmer keine Mehrwertsteuer (Artikel 293 B des französischen Steuergesetzes). Wenn Sie den Preis überprüfen, werden Sie sehen, dass keine Mehrwertsteuer oder Steuer darin enthalten ist.
Diese gefälschten Benutzer werden von Page Cache Ultimate erstellt, um den Cache zu anonymisieren (neue Methode). Sie dürfen sie nicht löschen (sie werden erneut erstellt).
Es wird nicht viele dieser gefälschten Benutzer geben, wahrscheinlich weniger als 5, es hängt von der Anzahl der Gruppen und den Unterschieden in der Anzeige zwischen ihnen ab.
Sie sind nicht aktiv, so dass sie Ihre Statistiken nicht stören.
Wenn Sie ein Anvato-Theme haben, müssen Sie folgendes tun, um zu verhindern, dass der Warenkorb bei jeder Aktualisierung geöffnet wird.
Kopieren Sie die Datei /modules/an_theme/views/js/sidebarcart.js in Ihr Theme, damit Sie es weiterhin aktualisieren können, ohne Änderungen zu verlieren, in /themes///modules/an_theme/views/js(erstellen Sie Ordner, falls nötig)
Ersetzen Sie in dieser Datei die Ligne:
if (prestashop.page.page_name != 'cart' && prestashop.page.page_name != 'checkout') {
Durch
if (prestashop.page.page_name != 'cart' && prestashop.page.page_name != 'checkout' && requestData.action!='refresh') {
Löschen Sie dann den Cache der Performances-Seite und den Cache Ihres Browsers, damit Sie testen können.
Wenn Ihr Theme das Tag "widgetblock" verwendet, wie es beim Warehouse-Theme der Fall ist, müssen Sie den Cache auf der Performances-Seite löschen, nachdem Sie den Seiten-Cache aktiviert haben, damit die Vorlage erneut kompiliert wird.
All our modules can run on LiteSpeed Web Server since it supports the Apache .htaccess file.
However, the HTML cache feature (Page Cache Ultimate) is not compatible with the LiteSpeed Cache Plugin since they are both working on the same layer of cache.
Which one should you choose?
LiteSpeed Cache is a generic cache which does not handle all different contexts of Prestashop. Which taxes are applied? Is there a flash sale comming up? Should I display a different content for this user because he belongs to a specific user group? Did this visitor accept cookies? etc.
Page Cache Ultimate has been created for Prestashop and it is only dedicated to this platform, it handles all different contexts and can also upgrade fast if a new Prestashop feature is out.
If you are using Nginx, then make sure your configuration is as follow:
"Proxy mode" must be ON, other options must be OFF.
Wenn Sie das von Google entwickelte Apache-Modul PageSpeed (x-mod-pagespeed) verwenden, müssen Sie die folgende Option deaktivieren, damit es die von Page Cache hinzugefügten Browser-Cache-Direktiven nicht überschreibt:
ModPagespeedModifyCachingHeaders aus
Sie finden Ihre Rechnung in Ihrem JPresta-Konto unter dem Menüpunkt "Bestellhistorie und Details".
Wenn Sie sie nicht sehen, stellen Sie sicher, dass Sie eine Adresse in Ihrem Konto registriert haben, damit die Rechnung erstellt werden kann.
Nein, es wird dringend empfohlen, den Smarty-Cache aktiviert zu lassen. Dies beschleunigt Seiten, die nicht zwischengespeichert werden, und auch Seiten, für die der Cache noch nicht generiert wurde.
Um Ihre Stile wiederherzustellen, müssen Sie nur den Cache von "Page Cache Ultimate" löschen.
Um dieses Problem zu vermeiden, können Sie im "Erweiterten Modus" in der Konfiguration von "Page Cache Ultimate" unter "Cache-Schlüssel" die Option "CSS- und JS-Version in den Cache-Schlüssel einfügen" aktivieren.
To avoid the cookie notice to appear 1 second, then disappear, you must override the javascript file of the iqitcookielaw module.
To do it, create a file with the following content:
$(document).ready(function () { if (getCookie('cookielaw_module') != 1) { $("#iqitcookielaw").addClass('iqitcookielaw-showed'); } $("#iqitcookielaw-accept").click(function (event) { event.preventDefault(); $("#iqitcookielaw").removeClass('iqitcookielaw-showed'); setcook(); }); }); function setcook() { var name = 'cookielaw_module'; var value = '1'; var today = new Date(); var expire = new Date(); expire.setTime(today.getTime() + 3600000 * 24 * 14); document.cookie = name + "=" + escape(value) + ";path=/;" + ((expire == null) ? "" : ("; expires=" + expire.toGMTString())) } function getCookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for (var i = 0; i != ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') c = c.substring(1); if (c.indexOf(name) != -1) return c.substring(name.length, c.length); } return ""; }
And place it in the theme (or child theme if you have one): /themes/warehouse/modules/iqitcookielaw/views/js/front.js
Then clear the cache in the Performances page.
When the cache is created, the page is anonymized, that means it is displayed without any information about the visitor displaying the page.
Modules that display content relative to the current visitor can be marked as dynamic, that means the content will be refreshed (replaced) by a background request in the browser that will carry the context of the current visitor.
If you check the option "Display nothing in cache" then the module will not be called to display its content in this hook during the creation of the cache. However, the content will be displayed as other dynamic modules (with background request).
If the products list is reloaded each time you display a page with a products list then you can fix this by modifying the file /warehouse/modules/ps_shoppingcart/ps_shoppingcart.js as follow:
Ersetzen Sie diese Zeile:
prestashop.emit('updateFacets', window.location.href);
Durch:
if (event.reason && event.reason.linkAction != 'refresh') { prestashop.emit('updateFacets', window.location.href); }
Aktualisieren Sie mindestens auf Page Cache Ultimate 7.9.39, um eine vollständige Kompatibilität mit dem cookiesplus-Modul zu erreichen.
Wenn nach der Installation des Moduls einige Bilder in Ihrem Shop, wie das Logo, die Bilder der CMS-Seiten, die Bilder im Backoffice usw., nicht mehr angezeigt werden, liegt dies wahrscheinlich an einer .htaccess-Datei in den Verzeichnissen /img und /img/cms. Diese Datei blockiert alle PHP-Skripte, selbst wenn es sich nur um eine Weiterleitung handelt (das Skript befindet sich nicht wirklich in diesem Verzeichnis).
Um dieses Problem zu beheben, müssen Sie eine Ausnahme für unseren webp.php-Konverter wie folgt hinzufügen:
<IfModule mod_php5.c> php_flag engine off
# Enable PHP only for webp.php (Speed Pack) <Files "webp.php"> php_flag engine on </Files> </IfModule> # Apache 2.2 <IfModule !mod_authz_core.c> Order deny,allow Deny from all <Files ~ "webp.php|(?i)^.*\.(jpg|jpeg|gif|png|bmp|tiff|svg|pdf|mov|mpeg|mp4|avi|mpg|wma|flv|webm|ico|webp)$"> Allow from all </Files> </IfModule> # Apache 2.4 <IfModule mod_authz_core.c> Require all denied <Files ~ "webp.php|(?i)^.*\.(jpg|jpeg|gif|png|bmp|tiff|svg|pdf|mov|mpeg|mp4|avi|mpg|wma|flv|webm|ico|webp)$">
Require all granted </Files> </IfModule>
Or for /img/cms/.htaccess
<IfModule mod_php5.c> php_flag engine off # Enable PHP only for webp.php (Speed Pack) <Files "webp.php"> php_flag engine on </Files> </IfModule> # Enable webp.php (Speed Pack) <Files "webp.php"> Order allow,deny Allow from all </Files> deny from all <Files ~ "(?i)^.*\.(jpg|jpeg|gif|png|bmp|tiff|svg|pdf|mov|mpeg|mp4|avi|mpg|wma|flv|webm|webp)$"> order deny,allow allow from all </Files>
Änderungen, die in einem Modul, im Theme, in CSS oder in Javascript vorgenommen werden, können nicht automatisch erkannt werden, so dass Sie den Cache löschen müssen, um die Änderungen zu sehen.
Es gibt 3 Möglichkeiten, den Cache zu löschen
- Gehen Sie in der Konfiguration des Moduls "Page Cache Ultimate" in das Menü "Statistik". Sie können die Seiten filtern, die von Ihren Änderungen betroffen sind. Klicken Sie dann auf die Schaltfläche "Cache löschen" am unteren Rand der Tabelle.
- Klicken Sie auf die Schaltfläche "Cache löschen" in der Konfiguration des Moduls "Page Cache Ultimate" oben und rechts auf dem Bildschirm, dies wird den Cache aller Seiten löschen.
- Verwenden Sie die URL, die Sie im Menü "API" in der Konfiguration des Moduls "Page Cache Ultimate" finden
Deaktivieren Sie in der Konfiguration des Warenkorbs im Abschnitt "Add to Cart Action" die Option "Open the cart".
Wenn Sie das von Liewebs entwickelte Modul "SuperTinyMCE PRO" verwenden, müssen Sie in der Konfiguration dieses Moduls eine Ausnahme für den Controller "JprestaThemeConfiguratorLive" hinzufügen. Stellen Sie außerdem sicher, dass Sie mindestens die Version 1.2.2 des Moduls "JPresta - Theme Configurator" verwenden.
Ja, alle Bilder Ihres Shops werden automatisch in das WEBP-Format konvertiert. Auch Bilder aus CMS oder anderen Modulen wie Blog.
Das ist normal. Wenn der Cache nicht verfügbar ist, ist die Anzeige genauso langsam wie ohne Cache.
Sie sollten den Cache nur leeren, wenn es nötig ist (Änderungen an CSS oder Javascript, bei Templates wählen Sie die Option "Template-Dateien neu kompilieren, wenn sie aktualisiert wurden" auf der Seite "Leistung").
JA, Sie brauchen noch ein WEBP-Modul für Prestashop! Denn die Funktion hat einen Fehler in PS 8.0. Er sollte in PS 8.1 behoben werden, aber ich werde dies überprüfen, sobald es veröffentlicht wird, weil ich nicht weiß, ob JPG-Bilder in Browsern angezeigt werden, die das WEBP-Format nicht lesen können, wie Safari (iPhone).
Dies war sehr schwierig, eine Konfiguration zu finden, die gut funktioniert. Ich bin kein Experte in der Konfiguration von nginx, so dass ich vermute, es gibt einen anderen Weg, es zu tun. Wenn Sie diese Konfiguration verbessern wollen, dann kontaktieren Sie mich, ich werde gerne diesen Beitrag aktualisieren, um anderen Leuten zu helfen!
Hier ist meine Lösung (seien Sie nett).
Vor dem Abschnitt "server", platzieren Sie diesen Code:
map $http_accept $webp_enable { default 0; "~*webp" 1; }
Er wird uns sagen, ob der Browser des Besuchers WEBP-Bilder lesen kann.
Sie haben wahrscheinlich mehrere Zeilen "rewrite" für alle Bilder, platzieren Sie den folgenden Code direkt davor:
# Jpresta Speedpack if ($webp_enable = 1) { # Rewrite images URL using a specific extension ".webp_compressor" so we can have specific rules to compress the image/svg # if the webp file is not already created. rewrite "^/c/([0-9]+)(\-[_a-zA-Z0-9-]*)/(.*)\.(jpg|jpeg|png)$" /img/c/$1$2.webp_compressor last; rewrite "^/c/([_a-zA-Z-]+)/(.*)\.(jpg|jpeg|png)$" /img/c/$1.webp_compressor last; rewrite "^/([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$1$2.webp_compressor last; rewrite "^/([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$1$2$3.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$1$2$3$4.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$4/$1$2$3$4$5.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8.webp_compressor last; rewrite "^/([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/(\P{M}\p{M}*)*\.(jpg|jpeg|png)$" /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9.webp_compressor last; # all other images rewrite "^(.+)\.(jpg|jpeg|png)$" $1.webp_compressor last; } location ~* ^(.+)\.webp_compressor$ { # Indicates to proxies that the file content/format depends (Vary) on the "Accept" header add_header Vary Accept; # Indicates to proxies that the file can be cached for the max duration add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; expires max; # Indicates to nginx not to log access access_log off; log_not_found off; # Try to serve the WEBP file directly or compress the image set $url_webp_compressor "/modules/jprestaspeedpack/controllers/front/webp.php?src=$1.jpg"; try_files $1.webp $url_webp_compressor; }
WARNUNG: Wenn Sie das eigenständige WEBP-Komprimierungsmodul verwenden, müssen Sie „jprestaspeedpack“ durch „jprestawebp“ ersetzen.
Kontaktieren Sie mich, wenn Sie Hilfe benötigen oder das Skript verbessern können!
Wenn die Auswahlliste für die Währung/Zahlungsmittel nicht mehr funktioniert, überprüfen Sie diese beiden Optionen:
Die Option "Ignore URLs matching this regex" muss ".*SubmitCurrency=1.*" enthalten, zum Beispiel: ".*[\?&]q=.*|.*SubmitCurrency=1.*"
Die Option "Ignored URL parameters " darf "submitcurrency,id_currency" nicht enthalten
Vielleicht möchten Sie auch den Browser-Cache deaktivieren, denn wenn der Besucher nach dem Aufrufen mehrerer Seiten die Währung wechselt, wird bei einem erneuten Besuch dieser Seiten die ursprüngliche Währung angezeigt.
Denken Sie daran, nach diesen Änderungen den Cache des Moduls und des Browsers zu leeren.
Unable to get cache-warmer informations from the shop (maybe the module is disabled or uninstalled): Read timed out
Wenn Sie diesen Fehler im Log des Cache-Warmer sehen, bedeutet das, dass es eine Zeitüberschreitung gibt, wenn der Cache-Warmer die Seiten zum Aufwärmen abruft. Um diese Zeitüberschreitung zu vermeiden, klicken Sie in der Konfiguration von Page Cache Ultimate auf "Erweiterter Modus", dann im Menü auf "Optionen" und stellen Sie einen niedrigeren Wert für "Maximale Ausführungszeit in Sekunden" ein.
ja, Browser, die das WEBP-Format nicht lesen können, erhalten das Originalformat (JPG/PNG).
Wenn Sie ein Produkt, eine Kategorie, eine CMS-Seite, einen Preis, den Lagerbestand usw. ändern, wird der Cache automatisch aktualisiert.
Wenn Sie ein Modul hinzufügen, löschen oder ändern, müssen Sie den Cache manuell löschen, da dies nicht automatisch erkannt werden kann. Zum Beispiel, wenn Sie den Schieberegler der Startseite ändern.
Wenn Sie das CSS oder eine Vorlage Ihres Designs ändern, müssen Sie den Cache manuell leeren, da dies nicht automatisch erkannt werden kann.
Wenn Sie Ihren Katalog, Ihre Preise und/oder Ihre Lagerbestände mit einer externen Anwendung synchronisieren oder ändern, müssen Sie wahrscheinlich den Cache manuell oder mit einem Skript leeren, da Hooks von Prestashop nicht ausgeführt werden.
Um den Cache bestimmter Seiten zu löschen, können Sie die CRON/API-URLs verwenden, die Sie im Menü „API“ in der Konfiguration von Page Cache Ultimate finden. Sie können auch die Statistiktabelle verwenden, um Seiten zu filtern, die Sie aktualisieren möchten, und dann auf die Schaltfläche "Cache leeren (nur Dateien)" klicken.
Beachten Sie auch, dass der Browser-Cache nicht gelöscht werden kann und daher zeitlich begrenzt ist.
Dies geschieht, weil der Anmeldelink dynamisch geladen wird und daher der "back"-Parameter, der auf die aktuelle URL verweist, mit der URL der dynamischen Module gesetzt wird.
Um dieses Problem zu vermeiden, gehen Sie in die Konfiguration von Page Cache Ultimate, in das Menü "Dynamische Module und Widgets", und fügen Sie unten im Feld "Auszuführendes Javascript" den folgenden Javascript-Code ein:
if (!prestashop_pc.customer.is_logged) {
$('header a').each(function() {
$(this).attr('href').replace('ajax%3Dtrue', '').replace('page_cache_dynamics_mods%3D=1', '')
});
}
Löschen Sie den Cache und das Problem sollte behoben sein.
diese Verzeichnisse werden erstellt, wenn der Cache in PHP nicht vollständig gelöscht werden kann, weil er zu lang ist und einen Zeitüberschreitungsfehler verursacht. Anstatt also das Cache-Verzeichnis zu löschen, wird es einfach mit diesem Suffix umbenannt.
Sie können alle diese Verzeichnisse mit dem Suffix please_delete_me löschen, aber ich empfehle, dies direkt in einer Serverkonsole zu tun, da es zu lange dauert, dies per FTP zu tun.
Diese Hooks sind für Entwickler von Modulen, kontaktieren Sie den Support, wenn Sie Hilfe benötigen.
Hier ist ein Beispiel, wie die Funktionen der Hooks implementiert werden können:
/** * Called each time a page is displayed so this must remain very fast! * @param $params Empty array * @return mixed The datas you will need in hookActionJPrestaRestoreSpecificCacheKeyInfos() */ public function hookActionJPrestaGetSpecificCacheKeyInfos($params) { // Let's say that the cookie 'test' modify the content of the page, we indicates to the cache manager // to generate a cache key that depends on the value of this cookie return $_COOKIE['test']; } /** * This function is called by Page Cache Ultimate when the cache-warmer service want to generate the cache of a * specific context. In this case we must restore the context so the content is the good one. * @param $params $params['specifics'] contains the datas returned by the hook 'ActionJPrestaGetSpecificCacheKeyInfos' */ public function hookActionJPrestaRestoreSpecificCacheKeyInfos($params) { // Here we will just modify the $_COOKIE value, we don't need to send the cookie to the browser with function // setcookie, we just want the remaining PHP code to execute to get the correct value of the cookie. $_COOKIE['test'] = $params['specifics']; }
Die Dauer der Warmups hängt von drei Punkten ab:
- Die Anzahl der zu generierenden Seiten: Die ersten Warmups enthalten normalerweise sehr viele Seiten, das ist normal und wird im Laufe der Warmups immer weniger
- Die von Ihnen festgelegte maximale Anzahl von Bots: Sie beträgt standardmäßig 30, Sie können sie auf bis zu 5 Bots reduzieren, um den Server zu entlasten, aber das verlängert natürlich die Zeit für jedes Warmup
- Die TTFB der Seiten ohne Cache: Wenn die Antwortzeit des Servers ohne Cache lang ist (> 3s), müssen Sie vielleicht die Langsamkeit von Prestashop analysieren
Cache-Warmer-Bots werden von Ihrem Hosting-Anbieter wahrscheinlich als SPAM-Bots betrachtet. Damit es funktioniert, müssen Sie in den Einstellungen Ihres Hosting-Providers angeben, dass der User-Agent "JPresta-Cache-Warmer" erlaubt ist.
Bei der Anzahl der Produkte und Kategorien, die Sie haben, hätten Sie nicht gedacht, dass Sie so viele Seiten generieren müssen, und das ist auch richtig so!
Der Cache-Warmer wird die Seiten Ihres Prestashop-Shops in verschiedenen Kontexten generieren. Zum Beispiel werden Sie einen Kontext für Mobiltelefone haben, einen anderen für Computer, einen für Besucher und einen für angemeldete Kunden, usw.
So wird die Anzahl der Seiten mit der Anzahl der Kontexte multipliziert.
Wenn Ihr Abonnement nur ein einziges Warmup enthält, dann ja, Sie können die Uhrzeit des Warmups angeben.
Wenn Ihr Abonnement mehrere Warmups enthält, dann können Sie die Startzeit des ersten Warmups angeben und die folgenden werden in regelmäßigen Abständen ausgeführt.
JPresta-Cache-Warmer nutzt Amazon-Server (AWS), um unabhängig von der Anzahl der Abonnenten einen stabilen und effizienten Service zu gewährleisten.
Wenn Sie möchten, dass Cache-Wärmer-Roboter nicht von Ihrem Hosting-Provider gesperrt werden, müssen Sie Anfragen von den folgenden IPS autorisieren: 18.119.72.109 und 18.189.172.189
Wenn Sie die nativen Prestashop-Statistiken verwenden, fügen Sie einfach diese Überschreibung in /override/classes/Connection.php ein, um zu verhindern, dass der Cache-Warmer in die Statistiken aufgenommen wird:
class Connection extends ConnectionCore
{
public static function setNewConnection($cookie)
{
if (isset($_SERVER['HTTP_USER_AGENT'])
&& preg_match('/JPresta-Cache-Warmer/i', $_SERVER['HTTP_USER_AGENT'])) {
// Das ist der Cache-Warmer: Verbindung nicht protokollieren
return false;
}
return parent::setNewConnection($cookie);
}
}
Mit dem Modul Creative Elements können Sie Teile Ihres Shops mit Links/Schaltflächen bearbeiten, die direkt im Shop angezeigt werden, wenn Sie im Adminbereich Ihres Prestashops angemeldet sind. Um diese Funktionalität zu erhalten, ist der Cache mit dem Grund "editing-with-creative-element" deaktiviert. Seien Sie beruhigt, Ihre Besucher profitieren sehr wohl vom Cache, es sind nur die mit dem Admin angemeldeten Benutzer, die keinen Cache haben. Um den Cache zu erhalten, müssen Sie nur den Shop in einem privaten Tab Ihres Browsers anzeigen.
Als Erstes sollten Sie sicherstellen, dass Sie die neueste Version des Moduls haben, da ich es ständig verbessere, um den Speicherverbrauch zu reduzieren, sowohl auf der Datenbank- als auch auf der Festplattenseite.
Das Zweite ist, regelmäßig (alle zwei oder drei Tage) eine Bereinigung durchzuführen. Eine Bereinigung löscht den Cache von Seiten, die nicht mehr existieren oder deren Kontext nicht mehr vorhanden ist. Dies wirkt sich nicht auf die Leistung des Cache aus. Sie können eine Bereinigung manuell über eine Schaltfläche unter der Tabelle mit den Cache-Statistiken durchführen oder eine CRON-Aufgabe mit der URL planen, die im Menü "API (CRON URLs)" in der Modulkonfiguration angezeigt wird.
Wenn es schließlich Verzeichnisse in /var/cache/pagecache gibt, die mit "please_delete_me" enden, dann können Sie diese löschen. Es handelt sich dabei um einen alten Cache, den PHP nicht vollständig löschen konnte (zu lang).
Wenn Sie versuchen, Page Cache Ultimate zu installieren, erhalten Sie die Fehlermeldung "Diese Datei scheint keine gültige .zip-Datei eines Moduls zu sein."? Das ist normal, denn diese Zip-Datei enthält mehrere Zip-Dateien, mit denen das Modul je nach Prestashop-Version installiert werden kann: PS-1.5/1.6, PS1.7/8 und Thirtybees.
Sie müssen also die für Ihren Shop passende Zip-Datei extrahieren und installieren.
Das Modul ruft nicht den Hook auf, der die Aktualisierung ermöglicht.
Sie müssen die Funktion imageResize() in der Datei /modules/prestablog/prestablog.php ändern:
Ersetzen Sie diese
return ImageManager::write('jpg', $dest_image, $file_after);
Durch dies
$ret = ImageManager::write('jpg', $dest_image, $file_after);
Hook::exec('actionOnImageResizeAfter', ['dst_file' => $file_after, 'file_type' => 'jpg']);
return $ret;
danach werden Ihre Bilder aktualisiert.
Der statische Cache kann nur verwendet werden, wenn man den Kontext kennt, in dem sich der Besucher befindet. Der Kontext enthält mehrere Informationen, die nicht allein aus der URL abgeleitet werden können: die Währung, die Benutzergruppen, die Wahl der Cookies, die zu erhebenden Steuern, etc.
Dieser Kontext wird in einem Cookie namens "jpresta_cache_context" gespeichert, das hinzugefügt wird, wenn der Benutzer eine erste Seite aufruft. Sobald das Cookie vorhanden ist, kann der statische Cache verwendet werden.
Gehen Sie in die Modulkonfiguration, stellen Sie im Menü "Cache-System" sicher, dass "Prestashop Static!" ausgewählt ist. Wenn es bereits markiert ist, wählen Sie "Standard-Dateisystem" und speichern Sie es, dann wählen Sie "Prestashop Static!" und speichern Sie es erneut. Dadurch wird der statische Cache wieder aktiviert.
Die Meldung "customer-specific-prices" bedeutet, dass Sie mit einem Benutzer angemeldet sind, der bestimmte Preisregeln hat. Es ist daher sinnlos, einen Cache zu erstellen, da nur er davon profitieren kann. Besser ist es, Benutzergruppen zu erstellen und für diese Gruppen Preisregeln zu erstellen.
Möglicherweise simulieren Sie einen Telefonbildschirm mithilfe der Konsole Ihres Browsers, was erklärt, warum Sie diese mobile Ansicht sehen, obwohl Sie einen Desktopbildschirm haben.
Dies geschieht, weil ein Cookie namens 'jpresta_cache_context' den Kontext des Besuchers im Browser speichert. Dieser Kontext enthält Informationen darüber, ob die Ansicht 'mobil' oder 'Desktop' ist. Wenn Sie also zuerst Seiten im Desktopmodus anzeigen und dann in den Mobilmodus wechseln, wird der Cache weiterhin die Desktopansicht liefern.
Wenn Sie die mobile Ansicht mithilfe der Konsole Ihres Browsers testen möchten, stellen Sie sicher, dass Sie den Cookie 'jpresta_cache_context' vorher löschen.
Nein, das Modul konvertiert nur JPG/PNG-Bilder in das WEBP-Format. Es wird empfohlen, Bilder als JPG hochzuladen, da einige Browser immer noch keine WEBP-Dateien laden können. Außerdem halte ich JPG für bessere Originalbilder, da Prestashop mehrere Formate/Größen von Bildern erstellt. Deshalb sollte das Originalbild von guter Qualität sein.
Wenn Sie das Modul "Google Tag Manager Enhanced Ecommerce" von "Comptoir du code" verwenden, stellen Sie sicher, dass Sie die neueste Version des Moduls erhalten und die spezielle Option für die Verwendung mit Full Page Cache-Modulen aktivieren.
In jedem Fall müssen Sie die Google Tag Manager-Module nicht als dynamisch markieren.
Die von Pagespeed und GTMetrix berechneten Werte umfassen eine sehr große Anzahl von Parametern, deren Bedeutung je nachdem, ob Sie ein Mobiltelefon oder einen Computer verwenden, unterschiedlich ist.
Mit dem Prestashop Speed Pack-Modul können Sie die folgenden von Pagespeed Insight oder GT Metrix gemeldeten Punkte korrigieren:
- Serverantwortzeiten reduzieren (TTFB)
- Bilder in Formaten der nächsten Generation bereitstellen
- Offscreen-Bilder verschieben
Andere Parameter wie LCP können von einem Modul nicht korrigiert werden. Dieses LCP gibt beispielsweise die Anzeigeverzögerung des größten zuerst angezeigten Elements an; Es wird häufig durch die Verwendung eines Karussells beeinträchtigt, das Bilder beim verzögerten Laden anzeigt, oder weil der Javascript-Code, der es initialisiert, zu langsam ist. Ein solches Problem kann nur manuell behoben werden.
Um sicherzustellen, dass die Score-Berechnung mit einem verfügbaren Cache durchgeführt wurde, führen Sie sie außerdem zweimal aus.
Ich lade Sie ein, meinen Artikel zu lesen, um diesen Pagespeed-Score für Prestashop vollständig zu verstehen.
Wenn Sie die Konfigurationsschritte validieren, achten Sie darauf, die automatische Konfiguration in Schritt 4 auszuführen. Dadurch wird das Page Cache Ultimate-Modul für alle bekannten Module wie den Warenkorb konfiguriert. Sie sollten sich auf diese automatische Konfiguration verlassen und nur dann manuelle Änderungen vornehmen, wenn bei aktiviertem Cache etwas nicht wie gewohnt funktioniert.
Der von Pagespeed und GTMetrix berechnete Score umfasst eine sehr große Anzahl von Parametern, deren Bedeutung je nachdem, ob Sie ein Mobiltelefon oder einen Computer verwenden, unterschiedlich ist.
Mit dem Modul Prestashop Speed Pack können Sie die folgenden von Pagespeed Insight oder GT Metrix gemeldeten Punkte korrigieren:
- Reduzierung der Serverantwortzeiten/TTFB (Page Cache Ultimate)
- Bereitstellung von Bildern in Formaten der nächsten Generation (WEBP-Komprimierung von Bildern)
- Verzögerung von Off-Screen-Bildern (Lazy Loading von Bildern)
Andere Parameter wie das LCP können nicht durch ein Modul korrigiert werden. Dieses LCP gibt beispielsweise die Anzeigeverzögerung des größten Elements an, das zuerst angezeigt wird; es wird oft durch die Verwendung eines Karussells verschlechtert, das Bilder mit einem Lazy-Loading-System anzeigt, oder weil der JavaScript-Code, der es initialisiert, zu langsam ist. Diese Art von Problem kann nur manuell behoben werden.
Um sicherzugehen, dass die Score-Berechnung mit einem verfügbaren Cache durchgeführt wurde, führen Sie sie außerdem zweimal aus.
Ich lade Sie ein, meinen Artikel zu lesen, Den Pagespeed-Score Ihres Prestashops verstehen und verbessern
Eine Seite kann mehrere Cache-Versionen haben, abhängig vom Kontext des Besuchers. Dieser Kontext enthält Informationen wie die ausgewählte Währung, die Benutzergruppe, die Präferenzen des Besuchers bezüglich Cookies, die für diesen Besucher geltenden Steuerregeln, das Land des Besuchers, falls relevant, und mehr. Daher kann es sein, dass Sie nicht die zwischengespeicherte Seite erhalten, wenn Sie eine Seite anzeigen, weil Ihr Kontext unterschiedlich ist.
Module wie "Creative Slider" verwenden kurze Codes, um die Anzeige der Inhalte zu vereinfachen. Dies geschieht in der Regel im Hook "actionOutputHTMLBefore". Stellen Sie also sicher, dass das Cache-Modul nach allen Modulen in diesem Hook platziert ist. Gehen Sie in "Design" > "Positionen", aktivieren Sie die Option "Nicht positionierbare Hooks anzeigen", suchen Sie den Hook "actionOutputHTMLBefore" und verschieben Sie das Modul Page Cache Ultimate oder Speed Pack an das Ende.
Dieser Fehler ist auf eine neue Sicherheitsbeschränkung zurückzuführen, die von meinem Hosting-Anbieter (OVH) auf all ihren Servern eingeführt wurde.
Um dies zu beheben, müssen Sie meine Module auf die neueste Version aktualisieren.
Sie werden dies nicht mit dem JPresta Easy Upgrade-Modul tun können, da auch dieses ein Upgrade benötigt.
Um das Upgrade durchzuführen, verwenden Sie die Addons oder laden Sie das Zip-Archiv von Ihrem JPresta-Konto herunter. Für Page Cache Ultimate und Speed Pack müssen Sie das Zip-Archiv extrahieren, um das für Ihre Prestashop-Version passende zu finden. Sobald Sie das richtige Zip-Archiv haben, installieren Sie es wie ein neues Modul, um Ihre aktuelle Version zu aktualisieren und die Konfiguration beizubehalten.
Keine Sorge, danach können Sie wie gewohnt mit JPresta Easy Upgrade weiter aktualisieren.
Der Fehlercode 524 bedeutet in der Regel, dass die Abfrage der Liste der zu erzeugenden URLs zu lange gedauert hat.
Um diesen Fehler zu vermeiden:
- Rufen Sie die Konfiguration von Page Cache Ultimate (oder Speed Pack).
- Klicken Sie auf Erweiterter Modus und dann auf Optionen.
- Setzen Sie die Option Maximale Ausführungszeit in Sekunden auf 90 Sekunden (oder weniger, wenn sie bereits 90 Sekunden beträgt).
Um bestimmte Seiten Ihres Shops nicht im Cache zu speichern, können Sie einen regulären Ausdruck verwenden.
Gehen Sie in die Konfiguration des Moduls, klicken Sie auf "Erweiterter Modus" und dann auf "Optionen". Dort finden Sie ein Feld "URLs durch regulären Ausdruck ignorieren". Dieses Feld ist standardmäßig mit dem folgenden regulären Ausdruck vorausgefüllt:
.*[\?&]q=.*|.*SubmitCurrency=1.*
Mit diesem regulären Ausdruck schließt das Modul alle Suchanfragen aus dem Cache aus (Verwendung des Parameters "q"), da dies nicht effizient ist, da die Anzahl der identischen Suchanfragen sehr gering ist. Es wird auch den Cache bei einer Währungsänderung deaktivieren.
Um eine auszuschließende Seite hinzuzufügen, können Sie einen weiteren Ausdruck mit einem "|"-Zeichen dahinter einfügen. Wenn Sie zum Beispiel die Seite https://shop.com/85-foo ausschließen wollen:
.*[\?&]q=.*|.*SubmitCurrency=1.*|.*85-foo.*
Weitere Informationen zu regulären Ausdrücken finden Sie in dieser Dokumentation: https://www.php.net/manual/en/reference.pcre.pattern.syntax.php
Um Ihren regulären Ausdruck zu testen, verwenden Sie dieses Tool: https://regex101.com/
Wenn der Cache aktiviert ist, enthält die JavaScript (JS)-Variable "prestashop" keine Informationen über den aktuellen Besucher/Kunden. Der Cache ist nämlich anonymisiert.
Sie müssen warten, bis die dynamischen Module aktualisiert werden, damit diese Informationen verfügbar sind.
Hier ist ein Skript, mit dem Sie auf die Informationen zugreifen können, sobald sie verfügbar sind:
if (typeof jprestaGetCacheType == 'function') {
// jprestaDynamicContentLoaded wird ausgelöst
prestashop.on('jprestaDynamicContentLoaded', function() {
// Hier kann die Variable 'prestashop_pc' wie die Variable 'prestashop' verwendet werden
// Alles, was in Media::addJsDef definiert ist, wird ebenfalls aktualisiert
console.log('Das Ereignis jprestaDynamicContentLoaded wurde ausgelöst und empfangen');
if (prestashop_pc.customer.is_logged) {
console.log('Der Kunde ' + prestashop_pc.customer.email + ' ist eingeloggt.');
} else {
console.log('Kein Kunde ist eingeloggt.');
}
});
} else {
// Normale Verarbeitung, kein Cache
// jprestaDynamicContentLoaded wird nicht ausgelöst
console.log('Diese Seite ist nicht im Cache gespeichert');
if (prestashop.customer.is_logged) {
console.log('Der Kunde ' + prestashop.customer.email + ' ist eingeloggt.');
} else {
console.log('Kein Kunde ist eingeloggt.');
}
}
Die Anzahl der zu generierenden Seiten variiert, da das Modul nur Seiten generiert, die entweder keinen Cache haben, einen abgelaufenen Cache haben oder einen Cache haben, der innerhalb von 24 Stunden abläuft.
Es kann vorkommen, dass die Anzahl der zu generierenden Seiten in regelmäßigen Abständen ansteigt, wenn der Cache abläuft; das ist normal.