Hoe u een WordPress-plug-in maakt. Leer plug-ins maken voor CS-servers

In deze handleiding leert u hoe u plug-ins voor een Counter-Strike-server maakt. Je leert hier de basis van.
Deze plug-in is geschreven voor de HL-mod - Tegenaanval. Houd er rekening mee.

Laten we beginnen met het schrijven van uw eerste plug-in.

Laten we beginnen met iets simpels: berichten op het scherm weergeven.

Laten we een commando bedenken dat dit doet:

amx_helloworld,
amx_hallo
of zelfs hallo

Het is noodzakelijk dat de beheerder, wanneer hij maar wil, de juiste opdracht kan invoeren en de bijbehorende inscriptie wordt op het scherm weergegeven:

hallo wereld,
Hallo
of zelfs "hallo allemaal"

Voordat we beginnen, wil ik een paar woorden zeggen over wat je nodig hebt om scripts te schrijven:
Je hebt een teksteditor nodig. Kladblok (notepad2) is goed, maar worldpad is beter. Als je het onder de knie hebt, kun je overstappen op handigere editors.

U moet AMXMod geïnstalleerd hebben en er moet dus een server zijn waarop het geïnstalleerd is.
Ik zal je niet uitleggen hoe je AMXMod op de server installeert en configureert, aangezien dit heel goed beschreven staat in de documentatie voor AMXMod.

Ben je klaar? Nou, laten we dan beginnen!

Open kladblok en sla het op met een naam zoals mijnplugin.sma. De sjabloon is er al, het enige dat overblijft is deze te vullen met opdrachten.
We beginnen met het gedeelte 'commentaar', helemaal aan het begin van de myplugin. sma. Een commentaarsectie is een onderdeel van code dat geen code is. Dit is slechts een opmerking. Meestal worden hier de naam van de plug-in en de versie ervan aangegeven. Later kunt u de werking van uw plug-in, de installatie ervan, enz. gedetailleerder beschrijven. Maar laten we voor nu klein beginnen:

/*
Hallo wereld, v0.1
Via website
*/

Ik begin de versienummering van plug-ins altijd met 0.1. Het maakt niet zoveel uit met welke versie je begint, maar begin niet met versie 1.0. Begin altijd nano met een kleinere versie. En als je beseft dat je plug-in klaar is voor de finale, dan heb je de kaarten in handen. Hoe dan ook, dit is maar een opmerking. Hier kunt u uw hele dag, minuut voor minuut, opschrijven, als een dagboek. Dit zal niet van cruciaal belang zijn, omdat... de compiler zal deze regels niet lezen. Maar het is logisch om hier de naam van de plug-in, versie en auteur te plaatsen.

Elke plug-in moet een plugin_init()-functie hebben.
Alles wat in deze functie wordt ingevoegd, wordt in AMX geregistreerd, zodat het uw plug-in kan gebruiken:

openbare plug-in_init() (
}

Maar dit is voor ons doel niet genoeg. Er moet een commando zijn dat de beheerder kan gebruiken en hiervoor moeten we het registreren in de plugin_init() functie. Commando's die in de serverconsole of vanaf de client worden ingevoerd, moeten zich in plugin_init() bevinden om te kunnen worden gebruikt. plugin_init() is om vele andere redenen belangrijk, waarover u in latere lessen zult leren. De functie plugin_init() vertelt AMXMod dat uw plug-in bestaat.

register_clcmd("amx_helloworld", "mijnfunctie", ADMIN_VOTE, " : drukt Hallo wereld af!!!")

Toevoegen deze lijn naar het functiegedeelte

plug-in_init()

Met deze regel registreren we het commando dat we later zullen gebruiken. De eerste parameter tussen aanhalingstekens is de opdracht die we in de console zullen invoeren. Volgende parameter tussen aanhalingstekens – dit is een functie in onze plug-in; wanneer de opdracht wordt ingevoerd, wordt deze uitgevoerd deze functie. We zullen deze functie later schrijven. Eigenlijk kun je het noemen hoe je wilt. De naam mag niet heel groot zijn, dan is deze naam niet geschikt (). Ik heb het zo genoemd vanwege de eenvoud en het gemak van het lezen van de tekst. De volgende parameter is het toegangsniveau. Die. wie op de server de rechten heeft om deze opdracht uit te voeren. IN in dit geval beheerder (ADMIN_VOTE). Waarom zouden gewone spelers moeten overstromen? Maar je kunt iedereen toegang geven: je moet 0 opgeven in plaats van ADMIN_VOTE. Let op: er zijn geen aanhalingstekens! De opdracht kan dus worden gebruikt door beheerders met stemtoegangsniveau (vote). EN laatste parameter– dit is een opmerking. Het wordt weergegeven wanneer u amx_help invoert. VERLIES DE QUOTEN NIET!!!

De functie plugin_init() ziet er dus als volgt uit:

openbare plug-in_init() (
register_plugin("Hallo wereld", "0.1", "site")
register_clcmd("amx_helloworld", "mijnfunctie", ADMIN _VOTE, ": zegt Hallo wereld!!!")
}

Houd inkepingen, d.w.z. gebruik "tab" of bijvoorbeeld spaties bij het schrijven van functies. Open er een. sma-bestand dat bij AMX wordt geleverd, en je zult zien waar ik het over heb. Dit zal de compilatie vereenvoudigen en de plug-in zal met een betere kwaliteit worden gecompileerd. Dit maakt het ook gemakkelijker voor andere ontwikkelaars om uw plug-in te leren kennen. Het is veel gemakkelijker om gestructureerde code te begrijpen dan een puinhoop. Er zijn nog meer ernstige redenen, maar daar ga ik nu niet op in.

Voeg de rijgegevens toe. Ze moeten aanwezig zijn in de plug-in:
#erbij betrekken
#erbij betrekken

Deze regels worden onmiddellijk na de opmerkingen en vóór de functie plugin_init() geplaatst. Zo voegen we CS-modules toe.

We hebben al aardig wat geschreven. Het zou er ongeveer zo uit moeten zien:

/*
Hallo wereld, v0.1
Via website
*/

#erbij betrekken
#erbij betrekken

openbare plug-in_init() (
register_plugin("Hallo wereld", "0.1", "site")
register_clcmd("amx_helloworld","mijnfunctie",ADMIN _VOTE,": zegt Hallo wereld!!! tegen spelscherm")
}

Bewaar altijd wat u schrijft. Wie weet wanneer de stroom wordt afgesloten. Probeer deze plug-in te compileren. Als er fouten zijn, is het nu gemakkelijker om ze te vinden. Dit maakt het veel gemakkelijker om fouten te vinden. (Hoe compileer ik de plug-in?)

Het enige wat we hoeven te doen is schrijven laatste functie– een bericht op het scherm weergeven. We hebben een opdracht geregistreerd die in de console wordt uitgevoerd, en we hebben ook het bericht geregistreerd dat op het scherm wordt weergegeven. Nu hoeft u alleen nog maar een functie te maken die dit allemaal doet:


retourneer PLUGIN_HANDLED
}
}

Ik zal niet beschrijven hoe de cmd_access() functie werkt. Laat ik zeggen dat het controleert of de client dit commando kan gebruiken.

Ik zou graag commentaar willen geven op het volgende: id.
Idd uniek nummer iedereen aanwezig op de server. Het wordt hem bij binnenkomst toegewezen en bij vertrek weer ingenomen. Dit is een uniek nummer voor elke speler; er kunnen geen identieke nummers zijn. Als de server is ontworpen voor 32 spelers, loopt de id van 1 tot 32. Engine Halfwaardetijd Er kunnen niet meer dan 32 spelers in. Als de server is ontworpen voor 16 personen, dan van 1 tot 16.

ID wordt op verschillende manieren gebruikt. In cmd_ access() wordt het toegangsniveau van deze huidige gebruiker en van niemand anders gecontroleerd via id. Ik hoop dat dit duidelijk is.

De volgende coderegel:

Dit is de coderegel die verantwoordelijk is voor het afdrukken van het bericht op de client. client_print is de naam van een functie die drie parameters nodig heeft (er zijn mogelijk meer parameters nodig, maar daarover meer in andere lessen). De eerste parameter (0) bepaalt wie de informatie ontvangt deze opdracht. Als u het ID-nummer van de speler invoert, wordt er een bericht voor hem en voor u weergegeven. In dit geval wordt het weergegeven voor iedereen die op de server aanwezig is (dood of levend). Die. als je met iedereen iets moet doen of iedereen iets moet vertellen, gebruik je 0. De tweede parameter geeft aan waar het bericht moet worden weergegeven. U kunt een bericht in het chatgedeelte plaatsen - print_chat of print_notificatie - wordt alleen in de console weergegeven. En de derde parameter is het bericht zelf. Wat tussen de aanhalingstekens staat, is het bericht dat op het scherm wordt afgedrukt. Verlies de aanhalingstekens niet.

We hebben bijna onze eerste plug-in geschreven. Het enige dat overblijft is toevoegen volgende regel in een functie

mijnfunctie(): retourneer PLUGIN_HANDLED

Beëindig de functie daarom altijd met return PLUGIN_HANDLED.

Onze plug-in ziet er als volgt uit:

/*
Hallo wereld, v0.1
Via website
*/

#erbij betrekken
#erbij betrekken

public myfunction(id,level,cid) (
if (!cmd_access(id,niveau,cid,1)) (
retourneer PLUGIN_HANDLED
}

client_print(0,print_center,"Hallo wereld!!!")

retourneer PLUGIN_HANDLED
}

openbare plug-in_init() (
register_plugin("Hallo wereld", "0.1", "site")
register_clcmd("amx_helloworld","mijnfunctie",ADMIN _VOTE," : drukt Hallo wereld!!! af voor iedereen")

Dat is alles, de plug-in is klaar. Compileer het en zorg ervoor dat er geen fouten optreden tijdens het compileren.
Als u tijdens het compileren de melding ontvangt

waarschuwing 217: losse inkeping,

ga naar de aangegeven regel en zorg ervoor dat de inspringing (“tab” – onthoud...) overal in uw plug-in hetzelfde is.

Nu kunt u het bestand myplugin.amx in de map plugins plaatsen en de plug-in registreren in config/plugins.ini. Vergeet niet uw server opnieuw op te starten.

Ga nu het spel in en schrijf amx_helloworld en zorg ervoor dat alles wordt weergegeven zoals het hoort.
Zorg ervoor dat wanneer u de opdracht amx_help invoert, de beschrijving overeenkomt met wat we hebben gebruikt.
Als de plug-in niet werkt, voer dan amx plugins in de serverconsole in en zorg ervoor dat de plug-in is geladen.
Misschien bent u vergeten uzelf als beheerder te registreren.

Bedankt dat je naar mij hebt geluisterd

    Geef uitleg over de Courier-plug-in met betrekking tot het item Bezorgregio\Stadsnaam (zie bijlage) Vraag: Hoe kan ik het veld Plaatsnaam leeg maken en tegelijkertijd, bij de stap van het selecteren van de koeriersbezorgmethode, het item Afleveradres worden weergegeven niet uitgebreid...

    Maak een plug-in voor betalingsacceptatie, BBVA Bank Spanje

    Maak een plug-in voor het accepteren van betalingen, bank BBVA Spanje volledige set instructies, zoals ik het begrijp, heeft de bank plug-ins voor andere frameworks, zijn er API-instructies enzovoort. We moeten het accepteren van betalingen met kaarten via hun systeem in korte tijd implementeren. Rekening...

    Maak een plug-in zoals Yandex Market alleen voor Google-producten

    We moeten een plug-in maken om producten met iedereen naar Google-producten te uploaden Google-aanbevelingen naar de losval. Prijsvoorwaarden?

    Er is een oplossing

    Weet iemand een plug-in of hoe je dit moet doen? Door op toevoegen aan winkelwagen te klikken, gaat de persoon onmiddellijk naar de winkelwagen (via omleiding). Er wordt verwacht dat het product uit één stuk bestaat en een persoon zal uiteraard niet meerdere stuks bestellen.

    Je kunt hiervoor het themasjabloon bewerken of bijvoorbeeld https://www.webasyst.ru/store/plugin/shop/tochecko... gebruiken.

    Er is een oplossing

    Goedendag allemaal. Er is een plug-in die in de productkaart wordt weergegeven met de volgende code (shopArrivedPlugin::getFormHtml($product)) als tekstregel (klikbaar) - dit is een plug-in om de beschikbaarheid te rapporteren eruit knopen? CSS heeft de stijlen voorgeschreven.

    Dit is geen hook, maar een helper. Geef in de plugin-instellingen waar de tekst is gespecificeerd bijvoorbeeld op Informeer over prijsverlaging en configureer de stijlen. Naast de zichtbare link voegt de helper ook een blok toe dat wordt weergegeven wanneer erop wordt geklikt.

    Maak een plug-in om productkenmerken in tabelvorm op de website weer te geven

    Het is noodzakelijk om een ​​plug-in te maken om de kenmerken van het product op de website weer te geven tabelvorm, op shopscript 6. Ik vertel je de details en laat je als voorbeeld een site zien waar dit al is geïmplementeerd. Leer de manager hoe hij op de juiste manier kenmerken en eigenschappen kan creëren...

    Er is een oplossing

    Hoe kan ik merken als link op een productpagina laten verschijnen? In lijsten wordt dit geïmplementeerd met behulp van de plugin ‘Kenmerken in productlijsten’. Misschien is er een soortgelijke oplossing voor de productpagina?

    Dit hielp: vervang ($f_value) door(if $features[$f_code].name == "BRAND FEATURES NAME"))($f_value)(else)($f_value)(/if)maar er kunnen problemen optreden als merken gebruik een paar woorden of speciale tekens. Dan moet je ook een JS-script toevoegen dat ze in deze regel opnieuw maakt volgens de regels van de merkplug-in

    Hoe maak ik schema-org-micromarkeringen voor een online winkel, producten, structuur en pagina's? Zijn er plug-intools of wordt alles in de doos meegeleverd en automatisch ingevuld? Of wordt dit niet meegeleverd?

    Ik weet niet hoe ik dit moet doen, er is een plug-in, maar er is geen drempel om in te stellen op 1000 roebel. Ik wil dat de optie voor gratis bezorging verschijnt als er een artikel in de winkelwagen zit met een waarde van 1000 roebel of meer, maar als de waarde 999 roebel is, is er geen optie voor gratis bezorging

    Maak een plug-in Er is een oplossing

    Goedemiddag! Ik vertegenwoordig een dienst voor het verhogen van de omzet voor online winkels. Om gebruikers kennis te laten maken met ons en onze service in hun online winkel te kunnen gebruiken, is het noodzakelijk om hen op de hoogte te stellen van deze mogelijkheid en het verbindingsprincipe uit te leggen (en het verbindingsprincipe uit te leggen). dit is een simpele...

    Hallo. 2000 roebel. Als de prijs u uitkomt, schrijf dan naar [e-mailadres beveiligd]

    Hoe kan ik ervoor zorgen dat de plug-in afzonderlijke instellingen heeft voor meerdere winkels in één installatie?

    Goedemiddag. Ik heb een vraag over de ontwikkeling van een plug-in. Een van onze klanten heeft 4 winkels op één ShopScript-installatie. Wat is de beste manier om de plug-in te organiseren als dat nodig is: voor elke winkel heeft de plug-in...

    Maak een synchronisatieplugin MyWarehouse Shop-script, de bestaande voldoet niet

    bestaande 1C-plug-in (CommerceML) - aangesloten, werkt, maar mist functionaliteit. ITFrogs-plug-in "Mijn magazijn: zendingen, retouren, acceptatie" - heeft geen gebrek aan functionaliteit, omdat het alleen zendingen in bulk lost, maar u moet het omgekeerde implementeren...

    Een Ajax-verzoek indienen bij een plug-in

    Er is een plug-in voor de Site-applicatie. Werkt binnen persoonlijke rekening. Wanneer het formulier wordt ingediend, wordt een verzoek verzonden: $.getJSON("my/artikul/444/", function(json) ( console.log(json); )); De controller bevindt zich in de plug-inmap...

    goedemiddag, ik wilde de plug-in Yandex.Market installeren, maar als ik naar het gedeelte met plug-ins in het installatieprogramma ga, wordt in mij de Engelse winkel www.webasyst.com geopend, die geen Yandex-plug-ins heeft. Vertel me alsjeblieft wat er kan zijn klaar

    Er is een plug-in voor de selectie van banden en wielen. https://www.webasyst.ru/store/... hoeft slechts in één productcategorie te worden weergegeven. Hoe dit te doen?

    hoe voer ik ajax-autorisatie uit zonder door te verwijzen naar /login/?

    Goedendag, er zijn oplossingen voor het vormgeven van het formulier en het uitschakelen van omleiding met weergave van het inlog- en registratieformulier op de hoofdpagina. Maar nergens is er een oplossing om dit allemaal met Ajax te doen. Kun je me in ieder geval vertellen waar de benen vandaan komen? en waar moet ik deze ajax naartoe sturen?...

    Vertel het me alstublieft. We hebben een alternatieve nummering van de bestellingen nodig. Degene die kopers zien (nou ja, wij ook, samen met de koper). de motor heeft de onze, interne nummering - hij is end-to-end en draait continu, dit is handig voor intern gebruik, dus wij...

    Ik ben een plug-in aan het ontwikkelen voor shop-script. De backend heeft er een speciaal formulier voor, dat zich bevindt in bestandsstructuur plug-in in de map templates/actions/settings/Settings.htmlFragment van de formuliercode:

    Hallo allemaal. Het was nodig om ervoor te zorgen dat dezelfde categorie (subcategorie) zich in verschillende andere categorieën bevond. De categorie benzine- en elektrische zagen zou bijvoorbeeld op het adres "Bouwgereedschap/Hand..." moeten staan.

    Goedemiddag. Mijn abonnement omvat 5 domeinen. Wat betekent het? Kan ik bijvoorbeeld 5 verschillende winkels maken met één beheerderspaneel en verschillende producten? Indien mogelijk, hoe? Of een aparte showcase maken in het Engels? Zal het nodig zijn voor...

    Ik ben een gespecialiseerde plug-in aan het maken voor het importeren van producten. Vertel ons wat we moeten doen om het in de sectie 'Importeren/Exporteren' te krijgen.

    Er is een oplossing

    Ik besloot bijvoorbeeld te schrijven dat je online via Sberbank een betaling kunt doen, ik doe het in de plug-ins "Betaalmethode" - "Contant", en daar maak ik de naam "SberbankOnline" en de beschrijving "Je moet het geld overmaken benodigde hoeveelheid...

    Zelf besloten Ging naar de winkelinstellingen Ging naar Meldingen Bewerkt - Bestelling geplaatst (Koper) E-mail Een regel toegevoegd aan de hoofdtekst van de brief na het spiekbriefje - ($order.params.betaling_description) Nu ontvangt de klant een brief met een beschrijving van de betaalmethode

    Wdis

    Op de pagina voor het selecteren van een bezorgmethode op de website van een winkel zou het handig zijn om een ​​plug-in te gebruiken om een ​​Yandex-kaart weer te geven met de mogelijkheid om bezorgpunten voor een specifieke stad aan te geven. Om dit te doen, moet je op de een of andere manier een deel van de HTML-code toevoegen aan het script...

Groeten. Als je WordPress al heel lang gebruikt, heb je het waarschijnlijk geprobeerd, of in ieder geval het advies van anderen gelezen en erover nagedacht om je eigen code aan het bestand toe te voegen. functies.php Het ingevoegde stukje code blijft echter zo, met alle gevolgen van dien (zie hieronder). In veel gevallen is het beter om uw eigen plug-in te schrijven in plaats van alleen maar code aan een bestand toe te voegen functies.php Vandaag zullen we leren hoe we plug-ins kunnen maken, want in feite is het veel eenvoudiger dan je denkt.

Wanneer moet u uw eigen plug-in schrijven?

Ja, soms kunt u functies.php gebruiken als u heel eenvoudige functionaliteit wilt toevoegen die iets gemeen heeft met het weergeven van inhoud. U kunt bijvoorbeeld extra .php toevoegen. Dergelijke wijzigingen verdwijnen uiteraard als u het thema bijwerkt.

Dezelfde code, maar verpakt in een plug-in, zou niet langer afhankelijk moeten zijn van het thema.

Wat heb je nodig om een ​​plug-in te schrijven?

Om een ​​plug-in te schrijven, moet u een plug-inbestand maken, er code aan toevoegen en deze vervolgens op de een of andere manier activeren. Elke plug-in heeft een openingscode die is becommentarieerd. En dan komt de plug-incode zelf. Als uw plug-in complexer is, of als u de elementen ervan wilt scheiden, moet u subbestanden maken: extra PHP-bestanden die u koppelt aan het hoofdplug-inbestand. Mogelijk wilt u ook stijlpagina's en aanvullende scripts in uw plug-in opnemen. Hoe u dit allemaal kunt doen, wordt hieronder beschreven.

Hier zijn een paar manieren om uw plug-in te activeren:

De functie gebruiken

Uw plug-in maakt een functie die u vervolgens aan uw thema toevoegt, waarbij u de code binnen de functie moet aanroepen.

Met behulp van een actiehaak

WordPress gebruikt honderden actiehooks die u kunt gebruiken om code aan te roepen in functies die u in uw plug-in heeft geschreven. Als uw thema een actiehaak heeft, kunt u een functie schrijven die u vervolgens aan die haak koppelt. De code in uw plug-in wordt uitgevoerd wanneer WordPress deze hook laadt.

Met behulp van een filterhaak

Met WordPress kunt u ook een verscheidenheid aan filterhooks gebruiken waarmee u de weergegeven informatie kunt wijzigen. Een filterhaak verschilt van een actiehaak doordat u hiermee de code kunt wijzigen die al wordt uitgevoerd, in plaats van nieuwe code toe te voegen. Je kunt ook filterhooks vinden in je thema of andere plug-in die je kunt gebruiken om code in je eigen plug-in te activeren.

Een shortcode gebruiken

Uw plug-in kan een shortcode genereren die u vervolgens aan uw berichten of pagina's kunt toevoegen.

Een widget gebruiken

Als uw plug-in een widget maakt, kunt u deze activeren door deze toe te voegen aan het widgetgebied.

Inleiding voor de plug-in

Om een ​​plug-in te maken, kunt u eenvoudig een bestand maken in uw map wp-content/plugins met de inleidende code erin:

U moet de bovenstaande code bewerken om uw eigen informatie toe te voegen.

Sla de plug-in op en deze verschijnt op de bekende pagina met uw plug-ins, waar u deze kunt activeren.

Dat is alles wat u hoeft te doen om een ​​plug-in te maken. Nu moet je er code aan toevoegen. Laten we eens kijken naar de verschillende manieren om code in een plug-in te activeren.

Schrijf een functie voor uw plug-in

Het eenvoudigste dat u met een plug-in kunt doen, is een functie schrijven. U kunt de functie vervolgens uitvoeren met behulp van een hook of door de naam van de functie in uw thema af te drukken. Stel dat u een functie wilt maken voor een call-to-action-knop en die knop vervolgens op verschillende plaatsen in uw thema wilt weergeven.

De functie van deze knop ziet er als volgt uit:

Functie wpmudev_cta() ( echo "

"; echo"

Bel ons op 000-0000 of mail [e-mailadres beveiligd]

"; echo"
"; }

Hierboven heb ik gebruikt echo om HTML binnen mijn PHP-functie aan te roepen. Als je veel HTML binnen een functie wilt toevoegen en niet zoveel echo wilt gebruiken, kun je in plaats daarvan PHP-tags voor openen en sluiten in je functie toevoegen.

Functie wpmudev_cta() (?>

Bel ons op 000-0000 of mail [e-mailadres beveiligd]

Wanneer u nu uw call-to-action-knop wilt toevoegen, hoeft u alleen maar de functie op de juiste plaatsen in de sjabloonbestanden van uw thema toe te voegen, zoals deze:

Dit is veel handiger dan simpelweg deze code aan uw thema toe te voegen telkens wanneer u een call-to-action-knop nodig heeft - minder code voor WordPress en minder manipulatie voor u.

Een functie activeren met behulp van een hook

Elke keer dat u die functie wilt gebruiken, is er een alternatief voor het schrijven van uw functie in de sjabloonbestanden van uw thema. Als uw thema haken heeft, kunt u uw functie aan een of meer van deze haken koppelen. Of je kunt een van de hooks gebruiken die WordPress zelf biedt of een plug-in die je al hebt geactiveerd.

Als je wilt weten of jouw thema een actiehaak heeft, kijk dan in de zijbalk genaamd mijnthema_zijbalk, kunt u uw functie eraan koppelen met behulp van de functie add_action():

Functie add_action() heeft twee vereiste parameters: de hook waaraan de functie is gekoppeld, en de naam van de functie. Er is ook een derde optionele parameter die de prioriteit vertegenwoordigt waarin uw functie wordt gespeeld. Wordt gebruikt als u een functie na of vóór een andere functie wilt uitvoeren.

Je kunt je functie aan zoveel haken bevestigen als je wilt. Dus als je je call-to-action-knop in de zijbalk wilt toevoegen, onder de inhoud van je thema, gebruik dan een hook mijnthema_onder_inhoud zoals hieronder weergegeven:

Functie wpmudev_cta() (?>

Bel ons op 000-0000 of mail [e-mailadres beveiligd]

Als je je code wilt koppelen aan een van de hooks die WordPress biedt, werkt het op dezelfde manier. Een voorbeeld is het maken van een plug-in die code toevoegt Google-analyses naar uw site, en raakt verslaafd wp_hoofd.

Code toevoegen met behulp van een filter werkt precies hetzelfde, behalve dat je de functie gebruikt add_filter(). Dus als het call-to-action-inhoudsblok al met behulp van een filter aan het thema is toegevoegd, moet je alles als volgt overschrijven:

In dit artikel bekijken we hoe u zelf een WordPress-plug-in kunt maken en laten we u zien waarom u deze mogelijk nodig heeft. We zullen je natuurlijk niet vertellen hoe complexe softwaremodules die veel functies uitvoeren, zijn gemaakt, maar we zullen alleen de basis laten zien. Dit is voldoende om veel problemen op te lossen.

Plug-in of code

is een CMS-shell gevuld met verschillende codes die plug-ins vervangen. Natuurlijk kunt u hierdoor een paar milliseconden winnen bij het laden van de pagina, maar het is uiterst moeilijk. Om deze of gene functie te configureren, moet u de code bewerken. Het is ook lastig als u een functie op een andere site moet implementeren: u moet alle code daar naartoe slepen en neerzetten.

We blijven het onderwerp ontwikkelen. Het komt voor dat het nodig is om een ​​specifieke functie op de site te installeren die geen enkele plug-in kan implementeren, of dat niet alle plug-in-oplossingen geschikt zijn. In dit geval moet u code in WordPress implementeren. Om de hierboven beschreven redenen is dit echter niet altijd handig of goed. En dan rijst de vraag: hoe maak je een plug-in zodat deze een code uitvoert.

Hoe maak je een plug-in voor WordPress

Voordat je een plug-in kunt maken, heb je PHP-code nodig voor de functie die moet worden uitgevoerd. U kunt deze code zelf schrijven als u deze programmeertaal begrijpt, of deze verkrijgen bij een dienst die deze functie biedt.

Maak daarna een PHP-bestand. Het kan gemakkelijk worden gedaan. Maak eerst een gewoon tekstdocument in .txt-formaat en wijzig vervolgens eenvoudigweg de extensie in .php. Om een ​​bestand te bewerken, is het beter om NotePad te gebruiken, waarover we schreven. Het is handig qua syntaxis.

Voordat u een plug-in maakt, opent u het gemaakte PHP-bestand en plaatst u de volgende code erin:

php

* Plug-inNaam: naam van onze plug-in

//code van een functie die deze plug-in zal uitvoeren

Nu plaatsen we dit PHP-bestand in een map, die we in Latijnse letters noemen. U moet er ook alle bestanden in opslaan die PHP-functiecode gebruiken, zoals CSS, Java-script of andere uitvoerbare bestanden.

Deze map is de plug-in die we hebben gemaakt. We kopiëren het naar de map wp-content/plugins en gaan naar de console om het te activeren. Als alles correct is gedaan, wordt na activering de PHP-functie in de plug-in op de site uitgevoerd.

Nu weet u hoe u een plug-in maakt. En nu kunt u het aan iemand laten zien of op uw andere website plaatsen. En u hoeft de code niet te bewerken.