Anonim

Zoals beweerd door de toonaangevende CMS-gemeenschap, maakt 25% van het internet gebruik van WordPress. Gezien de trends, hebben we geen andere keuze dan ze te geloven, bijna elke 2 e blog en elke 4 e site lijkt blijkbaar het meest krachtige en gebruiksvriendelijke CMS te gebruiken. In de toekomst zijn mensen en ontwikkelaars begonnen met het verplaatsen van hun sites naar WordPress Platform.

Bij deze poging om uw lieve en eenvoudige website te transformeren naar een complexe, goed presterende CMS-site, komen mensen vast te zitten op een zeer eenvoudige stap en stellen ze de vraag: In godsnaam, hoe krijg ik dit externe JavaScript (.js) -bestand werken in dit WordPress-thema? Ben jij ook degene die dezelfde vraag stelt? Nou amigo's, je bent eindelijk aan het juiste adres: ik ben hier om je stap voor stap door de eenvoudigste manier te begeleiden om deze taak te bereiken!

Nu we ervan uitgaan dat WordPress volledig is geïnstalleerd en geactiveerd met externe JS gereed, laten we de taak opnemen om het bestand op te nemen!

Opmerking: ik gebruik het volgende bestand (testrun.js) voor deze zelfstudie en het thema waaraan ik werk is Twenty Sixteen van WordPress .

alert ( 'Hallo');

Laten we beginnen!

Alle scripts en stylesheets worden geladen vanuit de functies.php . Dit is de juiste manier om ze in WordPress te laden om conflicten met andere scripts te voorkomen die worden geladen door WordPress zelf of door uw plug-ins die worden gebruikt. Als u WordPress alle opgenomen bestanden laat beheren, moet u laten weten dat u dit bestand wilt opnemen in het kop- (start-) of voettekst-gedeelte van het bestand. Elke sjabloon / thema heeft zijn eigen functies.php, dus de exacte naam van de functies die alle op te nemen bestanden bevat, is moeilijk te generaliseren. Aangezien ik er twintig zestien als thema neem, is hieronder de momentopname van hoe mijn functies.php (gebruikt voor het opnemen van bestanden). De jouwe moeten tot op zekere hoogte hierop lijken:

De functie wp_enqueue_script koppelt een scriptbestand op het juiste moment aan de gegenereerde pagina volgens de scriptafhankelijkheden, als het script nog niet is opgenomen en als alle afhankelijkheden zijn geregistreerd. U kunt een script koppelen aan een greep die eerder is geregistreerd met de functie wp_register_script (), of deze functie voorzien van alle parameters die nodig zijn om een ​​script te koppelen.

Het wp_enqueue_script ($ handle, $ src, $ deps, $ ver, $ in_footer) neemt de volgende params over:

$ handle

(string) (Verplicht) Naam van het script.

$ src

(string | bool) (Optioneel) Pad naar het script vanuit de hoofdmap van WordPress. Voorbeeld: '/js/myscript.js'.

Standaardwaarde: false

$ deps

(array) (optioneel) Een array met geregistreerde grepen waarvan dit script afhankelijk is.

Standaardwaarde: array ()

$ ver

(string | bool) (Optioneel) String die het versienummer van het script opgeeft, als dit er een is. Deze parameter wordt gebruikt om ervoor te zorgen dat de juiste versie naar de client wordt verzonden, ongeacht de cache, en moet dus worden opgenomen als er een versienummer beschikbaar is dat logisch is voor het script.

Standaardwaarde: false

$ in_footer

(bool) (Optioneel) Bepaalt of het script eerder moet worden gebruikt of eerder . Standaard 'false'. Accepteert 'onwaar' of 'waar'.

Standaardwaarde: false

U kunt de functie wp_register_script () voor deze zelfstudie negeren. Ons doel is alleen een externe JS op te nemen. Zonder dit zou het prima moeten werken!

Daarom, als ik mijn script als "test" wil noemen, onthoud dan dat deze param ($ handle) NIET noodzakelijk de naam is van het eigenlijke bestand, en mijn bestand is extern afhankelijk van jquery en versie is 1.0 en laadt voordat de pagina laadt dan zou mijn functie eruit zien:

wp_enqueue_script ('tutorial', get_template_directory_uri (). '/js/testrun.js', array ('jquery'), '1.0', false);

Als u opmerkt, heb ik get_template_directory_uri () gebruikt, dus de tekenreeks achter de functie, dat wil zeggen " /js/testrun.js " is eigenlijk het pad van het bestand naar het indexbestand van de sjabloon .

Dus uw $ src-kenmerk, dat de bron is van uw js-bestand, wordt: get_template_directory_uri (). 'Path_to_js_wrt_index_of_template'.

Daarom ziet de laatste functies.php eruit als:

Houd vol, we zijn bijna klaar! Sla dit nu op en druk op vernieuwen op uw website … u zou de JS moeten zien werken! Hier is de mijne:

Omdat we de optie $ in_footer op false hebben ingesteld, wordt het script geladen voordat de pagina wordt geladen, maar nadat JQuery is geladen zoals het is toegevoegd als afhankelijkheid!

En .. Voila! Hier is het .. Je hebt met succes een extern aangepast JS-bestand in je WP-thema opgenomen!

Veel plezier met coderen !!

Referentie: Enqueue Functie: WordPress Codex

Wat is de beste manier om aangepaste externe j's toe te voegen aan WordPress