Bootstrap und jQuery nicht einbinden

  • Hallo,


    ich wollte wissen, wie ich denn das Laden der ganzen Bootstrap und jQuery Dateien in meinem Template verhindern kann, da ich UiKit für das Frontend nutze.

    Leider hat keine der Lösungen funktioniert welche ich online gefunden habe.

    Sollte es hierfür nicht eine simple Einstellung geben? (Laden aktivieren/deaktivieren)


    MfG

    Andreas

  • Oft kann man direkt im Template, Framework oder einem zu installierenden Plugin bestimmte Dinge deaktivieren.

    Aber bist du sicher, dass du auf das Laden wirklich verzichten kannst?

    Evenuell könnte ein Link zur Seite für die Analyse weiterhelfen.

  • Leider gibt es da keinen Link, die Website existiert aktuell nur lokal auf meinem Rechner.

    Einstellungen kann ich leider auch nicht treffen, da ich das Template ja selber entwickle.


    Der head sieht aktuell so aus:

    Code
    <head>
        <title>Title</title>
        <meta charset="utf-8">
    
        <jdoc:include type="metas" />
        <jdoc:include type="styles" />
        <jdoc:include type="scripts" />
    
    </head>

    Aber genau hier wird der gesamte Bootstrap code geladen. Carousels, Toasts, jQuery, etc.
    Die brauche ich im Frontend nicht, denn es gibt keinen Code in meinem Template welcher diese Dateien benötigt.

  • Das sieht mir aber eher nach einem Joomla-4-Head aus. Oder ich habe was verpasst bei der Joomla-3-Entwicklung.


    Es ist schlicht so, dass jede Erweiterung Bootstrap und JQuery laden kann, wenn sie das benötigt, lange bevor das Template ins Spiel kommt. Ein fieser Trick in Joomla 3 kann sein, leere Overrides für Bootstrap und JQuery im Template anzulegen.


    Und, falls wir über Joomla 4 reden, machen genau diese Tags das. Das Laden von allen zuvor zusammengesammelten Aufforderungen dieses oder jenes zu laden, weil diese oder jene Erweiterung oder Joomla-Bestandteile das eben benötigt um zu funktionieren:


    Code
        <jdoc:include type="metas" />
        <jdoc:include type="styles" />
        <jdoc:include type="scripts" />

    Kurz: Du müsstest verhindern, dass diese "diese oder jene" eben nicht geladen werden. Aber dann ist die Verwendung von Joomla in Teilen sinnfrei, irgendwie.

  • Ah verstehe.

    Ja, es handelt sich um ein Template für Joomla 4.


    Gibt es eine Möglichkeit, ein Stylesheet oder eine JS Datei direkt über den Pfad anzugeben?

    Also ohne den AssetManager zu nutzen, und direkt einen <link> zu verwenden?

    Theoretisch müsste die entsprechende Datei ja erreichbar sein, außer Joomla verweigert direkte Zugriffe.

  • Ich bin da seit je her plump. Ich füge einfach einen hart-kodierten <link> in die index.php ein, z.B., wenn ich will, dass meine Override-CSS garantiert als letzte geladen werden soll/muss. Ebenso meine Template-JS, weil die auf jeder Seite eben geladen werden soll.


    Beispiel:

    PHP
    <script src="templates/<?php echo $this->template; ?>/js/template.min.js"></script>

    Wichtig ist, dass du keinen Schrägstrich am Anfang eingibst, damit Joomla, z.B. unter XAMPP den korrekten Pfad davor ermittelt.