Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: TEMPLATE: Bootstrap4 für Shop 2.x - freies responsive Template

    sb_cbo-do

    • Fördermitglied
    • Beiträge: 464
    Hallo,

    ich konnte mir jetzt doch noch selbst helfen und der Footer wird bei mir wie gewünscht angezeigt.
    Weil ich hier noch eine zusätzliche Box "Partner" eingebaut habe, mussten in der "index.html" des Templates noch Werte verändert werden.
    Ich musste dafür im Code in Zeile 124 verändern, der Newsletter soll bei mir im übrigen nicht angezeigt werden.

    Originalcode

    Code: PHP  [Auswählen]
    {* BEGINN FOOTER *}
            <div id="layout_footer" class="container-fluid bg-{$smarty.const.BS4_FOOTER_BG} py-4">
                    <div class="container mb-2">
                            <div id="layout_footer_inner" class="row">
                                    {if $smarty.const.MODULE_NEWSLETTER_STATUS == 'true'}{$col = 3}{else}{$col = 4}{/if}

    Hier habe ich die beiden {$col = 3}{else}{$col = 4} um 1 reduziert zu "{$col = 2}{else}{$col = 3}" und seit der Änderung, wird der Footer bei mir wie gewünscht angezeigt.

    Code: PHP  [Auswählen]
            {* BEGINN FOOTER *}
            <div id="layout_footer" class="container-fluid bg-{$smarty.const.BS4_FOOTER_BG} py-4">
                    <div class="container mb-2">
                            <div id="layout_footer_inner" class="row">
                                    {if $smarty.const.MODULE_NEWSLETTER_STATUS == 'true'}{$col = 2}{else}{$col = 3}{/if}

    MFG,

    Sven

    Scubi

    • Mitglied
    • Beiträge: 220
    Moin,
    ich bin dabei, meinen Server und die Webseite zu tunen. Pagespeed gibt mir immer folgendes aus:

    Fehler sollte behoben werden Übermäßige DOM-Größe vermeiden - 2.169 Elemente
    Ich bin mir nicht ganz sicher woan es liegt.

    Kann es sein, das die Bildergröße im Template und die Angaben im Shop unter Bilder Optionen nicht zusammen passen?

    Im Shop habe ich die Standardangaben: Thumbnails 160, Info 230 und Popup 800

    Wenn ich meinen Shop mit dem Inspektor ansehe, dann finde ich zumindest für die Thumbnails 211, die anderen kann ich nicht eindeutig zuweisen.

    Könnte da mal jemand drauf sehen und mir sagen was ich unter Bild Optionen eingeben muss?

    Gruß Scubi

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Mit Bildgrössen hat das nichts zu tun, dein DOM ist einfach riesengross und das liegt an deinem riesigen Kategoriebaum, siehe ZIP-Anhang. Selbst kannst du da nicht viel ändern, man müsste bei Shops die grosse Kategoriebäume haben die tieferen Level's mit Ajax nachladen anstatt sie dem HTML-Dokument mitzugeben.

    Zitat
    Vermeidung einer übermäßigen DOM-Größe

    Ein zu großer DOM-Baum mit komplizierten Stilregeln kann sich negativ auf die Geschwindigkeit, die Laufzeit und die Speicherleistung auswirken. Es empfiehlt sich, eine DOM-Struktur zu verwenden, die insgesamt weniger als 1500 Knoten umfasst, eine maximale Tiefe von 32 Knoten und keinen übergeordneten Knoten mit über 60 untergeordneten Knoten hat.
    Wie optimieren?

    Es empfiehlt sich, die DOM-Knoten zu entfernen, die Sie nicht mehr benötigen. Entfernen Sie zu diesem Zweck die Knoten, die derzeit nicht aus dem geladenen Dokument angezeigt werden, und versuchen Sie, sie erst zu erstellen, nachdem ein Benutzer eine Seite nach unten gescrollt oder eine Schaltfläche gedrückt hat.

    Obiges Zitat stammt von hier -> https://www.diewebag.de/blogs/pagespeed-optimierung-checkliste/

    Gruss
    Hanspeter

    Scubi

    • Mitglied
    • Beiträge: 220
    Hallo Hanspeter,

    danke, Du hast mich in die richtige Richtung geschupst. Manchmal steht man wie der Ochs vorm Berg. Ich konnte mit dem DOM nichts anfangen. Dann werde ich mal die Kategorien zusammen streichen.

    Kannst Du die Zip Datei bitte wieder entfernen?

    Gruß Scubi

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    [...]
    Kannst Du die Zip Datei bitte wieder entfernen?
    [...]

    Nein das kann ich nicht. Wieso möchtest du das die html.zip entfernt wird, sie enthält ja nur den Quellcode der Startseite deines Shops, welchen man angezeigt bekommt wenn man auf dein Häuschen klickt?

    Gruss
    Hanspeter

    Timm

    • Fördermitglied
    • Beiträge: 6.259
    @scubi
    Einfach so die Kategorien zu streichen, ohne eine Weiterleitung in der .htaccess einzupflegen, wird sich vorübergehend auf deine Rankings auswirken. Solltest du bedenken.

    Gruß Timm

    Scubi

    • Mitglied
    • Beiträge: 220
    Hallo Hanspeter,
    weil ich grundsätzlich kein Fan davon bin, die Leute mit der Nase drauf zu stoßen. Ist aber natürlich kein Beinbruch, wenn Du es nicht löschen kannst.

    Hallo Timm,

    das mit den Weiterleitungen ist mir klar, werde ich machen.
    Kostet zwar auch wieder etwas Ladezeit, aber muss natürlich gemacht werden.
    Anschließend noch die Texte der Oberkategorien anpassen, dann sollte das laufen.

    Gruß Alois

    Timm

    • Fördermitglied
    • Beiträge: 6.259
    Nutz doch den "Moderator informieren" Button. Dann wird's vom Team gelöscht.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.991
    • Geschlecht:
    @Karl
    Ich hätte einen Verbesserungsvorschlag.
    Das konditionelle Laden von z.B. CSS-Dateien (z.B. für die Anzeige des EU-Cookie-Banners in der general_bottom.css.php) hat keine Wirkung wenn das Shop-Skript für die Zusammenfassung und Komprimierung der CSS-Dateien nichts davon weiß. Das heißt, wenn eine Einstellung im Backend in der Template-Konfiguration Auswirkungen auf geladene CSS- und/oder JS-Dateien hat, sollte eine neue Komprimierung angestossen werden.
    Das kann man machen mittels
    • touch(EINE_DATEI_DIE_IMMER_GELADEN_WIRD)
      womit man die Filetime einer solchen Datei ändert und somit eine Neukomprimierung erzwingt,
      oder
    • (am Besipiel CSS)
      file_put_contents(DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/css/tpl_plugins.min.css', '', LOCK_EX);
      Womit man die Datei die den komprimierten Code enthält leert, wodurch ebenfalls eine Neukomprimierung erzwungen wird.
    Aufgefallen ist es mir bei Änderung des Darstellungsortes des Cookie-Banners, welches keine Wirkung hatte bis ich eine Neukomprimierung des CSS händisch erzwungen habe.
    Allerdings sollte man vielleicht auch nicht konditionslos Dateien wie preparemenu.min.js laden, da die Verwendung von Einstellungen im Backend abhängt, also, für den genannten Fall, ob man das Top-Menu verwendet. Auch hier könnte man bei Aktivierung oder Deaktivierung des Top-Menus eine Neukomprimierung mit oder ohne die genannte Datei erzwingen.

    Das eine bringt User-Ferundlichkeit, das andere spart Ressourcen und lädt bei Bedarf weniger Code.

    Ansonsten, nochmals Kudos, Chapeau und Respekt für die umfangreiche und professionelle Arbeit.

    Gruß,
    noRiddle

    Scubi

    • Mitglied
    • Beiträge: 220
    Hallo Hanspeter,

    nochmal Danke. Dein Tip hat mich ein ganzes Stück nach vorne gebracht. Nachdem der Server dann noch an vielen Stellen getunt wurde, läuft es rund. Allerdings geben alle Tools unterschiedliche Werte aus.

    Ich habe Pagespeed, Modpagespeed plus, Test My Site und Google Chrome Audits zum vergleichen genommen.

    Nur zur Info, für die neuen User, die auch schnelle Seiten wollen. Also lasst Euch nicht verwirren :-)

    Gruß Alois

    Karl1

    • Experte
    • Beiträge: 1.881
    Hallo noRiddle,
    erstmal danke für dein Lob - auch danke an die anderen.

    Du hast natürlich Recht, Änderungen in der Templatekonfiguration stoßen keine Neukomprimierung an, daran habe ich nicht gedacht.
    Da ich in die combine_files.php bereits eine Prüfung der config.php eingebaut habe liegt eine Lösung mit deinem "Touch-Vorschlag" nahe, es muss nur eine kleine Änderung im Template Manager gemacht werden.

    In der Datei admin/includes/bs4_template_manager/bs4_tpl_manager_config.php einfach die komplette
    function set_conf() mit diesem Code ersetzen
    Code: PHP  [Auswählen]
            // save configuration
            public function set_conf($config_data) {
                    foreach ($config_data as $key => $value) {
                            xtc_db_query("UPDATE ".TABLE_BS4_TPL_MANAGER_CONFIG." SET config_value = '".$value."' WHERE config_key = '".$key."'");
                    }
                    if (COMPRESS_STYLESHEET == 'true' || COMPRESS_JAVASCRIPT == 'true'){
                            $this->touch_config_php();
                    }
            }

            // touch template config.php, if settings changed and compress is true
            protected function touch_config_php() {
                    $tpl_config_file = DIR_FS_CATALOG.'templates/'.BS4_CURRENT_TEMPLATE.'/config/config.php';

                    if (file_exists($tpl_config_file)) {
                            touch($tpl_config_file);
                    }
            }

    Was meinst du dazu?

    Gruß Karl

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.991
    • Geschlecht:
    Mit EINE_DATEI_DIE_IMMER_GELADEN_WIRD ist natürlich eine CSS- oder JS-Datei gemeint, je nachdem was betroffen ist. Für das Beispiel CSS wäre das also eine Datei die nicht konditional geladen wird aus dem Array $css_array in /templates/bootstrap4/css/general.css.php oder ~/general_bottom.css.php, je nachdem welche Datei betroffen ist.

    Zur allgemeinen Information:
    Wie ich hier bei Fishnet's Template bereits einmal aufgeführt habe,
    neu erstellt wird die komrimierte Datei wenn
    • eine der zu komprimierenden Dateien geändert wurde (dafür würde auch ein programmatisches touch() ausreichen)
      oder
    • wenn die Datei in die komprimiert wird selbst leer ist.

    Gruß,
    noRiddle

    Scubi

    • Mitglied
    • Beiträge: 220
    Moin,

    mit Test My Site von Google: https://www.thinkwithgoogle.com bekomme ich immer schlechte Bewertungen für Die Geschwindigkeit. Insgesammt Langsam 4,7 Sekunden. Insgesammt liegt die Ladezeit bei 2,1. Ich möchte aber eher in Richtung 1. Am beste drunter. Die Kategorien habe ich ja jetzt schon um ca. 500 reduziert. Der Wert ist von 2600 auf ca. 1400 gesunken.

    1. Mit der CCS Funktion für die Fontdarstellung bleibt Text für Nutzer Sichtbar.

    An welcher Schraube muss da gedreht werden?

    2. Durch HTTP Caching können Sie die Seitenladezeit für wiederkehrende Nutzer verkürzen. Erhöhen Sie die Cache Lebensdauer.

    Am Server ist schon eine längere Cache Zeit eingetragen. Muss ich die auch in der htaccess anpassen?

    3. Nicht verwendete CSS löschen.

    Muss das Template noch aufgeräumnt werden?

    Gruß Alois

    alex3536

    • Frisch an Board
    • Beiträge: 67
    @Scubi
    Wird wohl eher ein Server-Leistungs-Problem bei dir sein. Der Shop mit diesem Template hier hat Mobile 98 Punkte und Desktop 100 Punkte. Erste Inhalte werden Mobile nach 1,3s angezeigt und im Desktopmodus nach 0,4s.

    Scubi

    • Mitglied
    • Beiträge: 220
    Hallo Alex,

    der Server selber ist schnell mit 32 GB für einen einzigen Shop.
    Es liegt eher an den oben angefragten Problemen bzw. Einstellungen. Die muss ich noch lösen, um etwas schneller zu werden.
    Es geht hier um die reine Ladezeit, nicht darum, was Pagespeed ausgibt. Die Werte 98 und 100 sind top.

    Aber die reine Ladezeit ist bei mir eben erheblich zu langsam.
    1266 Antworten
    427884 Aufrufe
    12. Dezember 2023, 07:46:30 von Karl1
    179 Antworten
    12919 Aufrufe
    14. September 2024, 10:13:46 von kotzbrocken
    1228 Antworten
    652957 Aufrufe
    11. März 2020, 16:11:33 von Baschtl
    1 Antworten
    3300 Aufrufe
    24. April 2018, 09:36:44 von lukass
               
    anything