Script in Funktion verpacken - Wie?

  • Nachdem ein freundlicher Admin meine Wißbegier gestern abrupt stoppte, weil ich es doch tatsächlich gewagt hatte, ein noch immer nicht geklärtes Problem noch einmal in das Board zu stellen - mit bereits erweitertem Wissen - kann ich nun meine Frage anders stellen. Denn die auf meine Frage gegebene Antwort von mbstf wird erwähnt, daß man das im Header befindliche Script

    Code
    <head>
    ...
    <script type="text/javascript" src="http://website/wp-content/themes/NumertoMagazine/js/jquery-1.4.2.min.js"></script>
    </head>

    "in einer Funktion zum Laden verpacken sollte (die dafür auch sorgt, dass jQuery nur ein mal geladen wird)."

    FRAGE: Wie kann ich das Script aus dem Header entfernen und in eine Funktion verpacken, und wo muß ich diese dann wie einbauen. Ich könnte mir vorstellen, daß dies in der functions.php geschieht.

    Ansonsten habe ich - wie schon gesagt - keine Ahnung, und erbitte daher detaillierte Antworten. Falls dem großen Admin das recht ist.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Nachdem ein freundlicher Admin meine Wißbegier gestern abrupt stoppte, weil ich es doch tatsächlich gewagt hatte, ein noch immer nicht geklärtes Problem noch einmal in das Board zu stellen - mit bereits erweitertem Wissen - kann ich nun meine Frage anders stellen.

    Der freundliche Admin bzw. eher Mod hat nur darauf hingewiesen, dass man ja auch im Ursprungs-Thread weiter machen kann und nicht ständig dafür einen neuen Thread aufmachen muss. Dies hat der freundliche User schließlich auch mit den Forenregeln akzeptiert.

    Zur Frage:
    Du kannst im header.php z.B. jquery derigistrieren

    PHP
    wp_deregister_script('jquery');

    um dann z.B. selber jquery einzubinden, dass ganze lässt sich auch über eine function regeln:
    http://codex.wordpress.org/Function_Refer…_script#Example

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Hallo Maxe,
    im vorigen (geschlossenen) Post erhielt ich die Antwort, daß WP 3.2 jquery im Header jetzt selbst lädt und wohl auch braucht(?). Warum also dies deaktivieren?

    Ist es nicht besser (auch für zukünftige ähnliche Problemstellungen), wenn ich dieses Script für den Slider (der im Theme integriert ist) aus dem header rausnehme und woanders (functions.php?) einbaue und initiiere?

    Wobei dennoch das Problem weiter besteht, daß ich null Ahnung davon habe wie das geht. Weder die eine, noch die andere Lösung. Ich habe mir zwar die "Function Reference/wp enqueue script"-Seite angesehen, doch verstehen tu ich nix. Ich hoffe jetzt mal auf den freundlichen Admin oder einen anderen freundlichen Menschen in diesem Forum.

    mfg Klaus

  • Nein, der Tipp war: du sollst dir ein anderes Countdown Plugin suchen.

    Meine Empfehlung war auch nicht jquery zu deaktivieren ... du hattest danach gefragt.
    Also hatte ich nur vorgeschlagen, die Zeile aus deinem Theme in der header.php

    PHP
    <script type="text/javascript" src="http://website/wp-content/themes/NumertoMagazine/js/jquery-1.4.2.min.js"></script>

    zu löschen und statt dessen eine aktuellere Version zu nehmen:

    PHP
    <?php
        wp_deregister_script( 'jquery' );
        wp_register_script( 'jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js');
        wp_enqueue_script( 'jquery' );
    ?>

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Ich habe die Zeile aus dem header entfernt und statt dessen deregister, register, enqueue eingefügt. Der Countdown lief daraufhin einwandfrei.
    Allerdings lief der Slider des Themes nicht mehr. Für mich auch verständlich, denn der Slider und das entfernte Script kommen mit dem Theme. Die aktuelle Version von jquery paßt also nicht mehr zu dem Slider, wenn ich das richtig verstehe. Was also kann ich tun?

  • läuft der Countdown denn mit dem jquery vom Theme wenn du das jquery von WP vorher deregistrierst?

    PHP
    <?php 
        wp_deregister_script( 'jquery' );
    ?>
    <script type="text/javascript" src="http://website/wp-content/themes/NumertoMagazine/js/jquery-1.4.2.min.js"></script>

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Nein.

    Zur Erläuterung vielleicht noch folgendes: Der Countdown wird auch wenn ich alles so lasse wie es ist immer ordentlich angezeigt und auch bei jedem Refresh der Site aktualisiert - er läuft nur nicht kontinuierlich, wie er es eigentlich macht.

    Ich habe denselben Countdown übrigens auf einer anderen Schul-Website zu laufen, ohne Probleme, auch WP 3.2. Dort gibt es aber eben keinen Slider.

    Aber für heute sollte es genug sein. Wenn Du noch eine Idee hast, würde ich mich morgen freuen. Vielen Dank für Deine bisherige Geduld.

  • Meine erste und letzte Idee, entweder Theme/Slider oder Plugin wechseln.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!