Hvernig á að búa til búnaðarforrit fyrir WordPress

WordPress er ótrúlegt innihaldsstjórnunarkerfi með mörgum frábærum aðgerðum eins og búnaði. Í þessari kennslu ætla ég að útskýra hvernig þú býrð til þínar eigin búnaðir í litlu viðbæti. Þessi færsla mun taka til nokkurra aukaatriða sem þú þarft að skilja áður en þú býrð til græjuna sjálfa. Hér förum við!


Skref 1: Búðu til búnaðarforritið þitt

Ég bjó til nýlega viðbót sem kallast „Freelancer Widgets Bundle“ og sumir spurðu mig hvernig ég ætti að búa til svona viðbót, svo ég ákvað að skrifa þessa færslu. Fyrsta skrefið er að búa til viðbótina. Og eins og þú sérð, þá er það ekki erfiðasti hlutinn. Viðbót er viðbótarkóði bætt við WordPress þegar þú hefur virkjað hann. WordPress býr til lykkju í gegnum möppu til að sækja allar tiltækar viðbætur og skrá þær á skrifstofuna. Til að búa til viðbótina þarftu ritstjóra eins og Coda (Mac) eða Dreamweaver (PC & Mac). Ég mæli með að þú býrð til viðbótina þína í staðbundinni uppsetningu WordPress, það að gera það á lifandi netþjóni getur valdið nokkrum vandræðum ef þú gerir villu. Svo vinsamlegast, bíddu við að prófa viðbótina áður en þú setur það á hýsinguna þína.

Opnaðu núna möppuna wp-content / plugins. Þetta þar sem þú ert að fara að bæta við viðbótinni. Búðu til nýja möppu og kallaðu hana „búnaður-viðbót“ (í raun getur þetta nafn verið það sem þú vilt). Jafnvel þó að viðbótin okkar hafi aðeins eina skrá, þá er alltaf betra að nota möppu fyrir hvert viðbót. Búðu til þína skrá í skránni þína sem kallast „widget-plugin.php“ (þessu nafni er líka hægt að breyta) og opna hana. Við erum núna að fara að bæta við fyrstu kóðalínunum okkar. Skilgreiningin á viðbæti undir WordPress fylgir nokkrum reglum sem þú getur lesið hér á Codex. Svona skilgreinir WordPress viðbætur:

Svo verðum við að breyta þessum kóða til að hann passi við þarfir okkar:

Vistaðu skjalið þitt. Með því að bæta aðeins kóða við búnaðinn plugin.php skrá okkar höfum við búið til viðbót! Jæja, í bili gerir viðbótin ekki neitt, en WordPress þekkir það. Til að ganga úr skugga um að svo sé, skaltu fara í stjórnun þína og fara í valmyndina „Tappi“. Ef viðbótin þín birtist á viðbótarlistanum ertu góður, annars vertu viss um að fylgja leiðbeiningunum mínum og reyndu aftur. Þú getur nú virkjað viðbótina.

Skref 2: Búðu til græjuna

Við ætlum nú að búa til búnaðinn sjálfan. Þessi búnaður verður PHP flokkur sem nær kjarna WordPress bekkjarins WP_Widget. Í grundvallaratriðum verður búnaðurinn okkar skilgreindur á þennan hátt:

// Græjaflokkurinn
bekk My_Custom_Widget nær WP_Widget {

// Aðalframkvæmdir
opinber aðgerð __construct () {
/ * ... * /
}

// Græjuformið (fyrir stuðninginn)
form fyrir almenna aðgerð ($ dæmi) {
/ * ... * /
}

// Uppfærðu búnaðarstillingar
opinber aðgerð uppfærsla ($ new_instance, $ old_instance) {
/ * ... * /
}

// Birta búnaðinn
búnaður til almenningsaðgerða ($ args, $ dæmi) {
/ * ... * /
}

}

// Skráðu græjuna
virka my_register_custom_widget () {
register_widget ('My_Custom_Widget');
}
add_action ('widgets_init', 'my_register_custom_widget');

Þessi kóða gefur WordPress allar upplýsingar sem kerfið þarf til að geta notað búnaðinn:

  1. The framkvæmdaaðila, til að hefja búnaðinn
  2. The form () fall til að búa til búnaðarformið í stjórnuninni
  3. The uppfæra () aðgerð, til að vista gögn búnaðarins meðan á útgáfu stendur
  4. Og búnaður () búnaður til að birta innihald búnaðarins í framhliðinni

1 - framkvæmdaaðilinn

Framkvæmdastjórinn er sá hluti kóðans sem skilgreinir heiti búnaðarins og helstu rök, hér að neðan er dæmi um hvernig það kann að líta út.

// Aðalframkvæmdir
opinber aðgerð __construct () {
foreldri :: __ smíða (
'my_custom_widget',
__ ('Sérsniðna búnaðurinn minn', 'textasafn'),
fylki (
'customize_selective_refresh' => satt,
)
);
}

Vinsamlegast notaðu ekki __ () í kringum græjuheitið, þessi aðgerð er notuð af WordPress til að þýða. Ég mæli virkilega með þér að nota alltaf þessar aðgerðir, til að gera þemað þitt að fullu þýtt. Og notkun breytunnar „sérsníða_selective_refresh“ gerir kleift að endurnýja græjuna undir Útlit> Sérsníða þegar þú breytir búnaðinum þannig að í stað þess að endurnýja alla síðuna er aðeins búnaðurinn endurnærður þegar breytingar eru gerðar.

2 - Aðgerð formsins ()

Þessi aðgerð er sú sem býr til stillingar búnaðarformsins á WordPress admin svæði (annað hvort undir Útliti> búnaður eða Útliti> Sérsníða> búnaður). Þetta er ef þú slærð inn gögnin þín sem birt verða á vefsíðunni. Svo ég mun útskýra hvernig þú getur bætt textareitum, textasvæðum, valkössum og gátreitum við stillingar búnaðarins.

// Græjuformið (fyrir stuðninginn)
form fyrir almenna aðgerð ($ dæmi) {

// Stilla sjálfgefið búnað
$ vanskil = fylki (
'title' => '',
'text' => '',
'textarea' => '',
'checkbox' => '',
'velja' => '',
);

// Flokka núverandi stillingar með vanskilum
þykkni (wp_parse_args ((fylki) $ dæmi, $ vanskil)); ?>


/>

Þessi kóði er einfaldlega að bæta 5 reitum við búnaðinn (Titill, texti, textarea, veldu og gátreit). Svo fyrst þú skilgreinir vanskil fyrir búnaðinn þinn, síðan er næsta aðgerð parað núverandi stillingum sem eru skilgreindar / vistaðar fyrir búnaðinn þinn með vanskilunum (svo að allar stillingar sem eru ekki til myndu snúa aftur til sjálfgefna, eins og þegar þú bætir búnaður við fyrst hliðarstikan þín). Og síðast er HTML fyrir hvern reit. Taktu eftir notkun esc_attr () þegar þú bætir við formreitunum, þetta er gert af öryggisástæðum. Alltaf þegar þú bergmálar af notendaskilgreindri breytu á síðunni þinni ættirðu að ganga úr skugga um að hún sé fyrst hreinsuð.

3 - Aðgerðin fyrir uppfærslu ()

Aðgerðin fyrir uppfærslu () er mjög einföld. Þegar WordPress kjarnahönnuðir bættu við virkilega öflugu búnaðarforritum verðum við aðeins að bæta þessum kóða við til að uppfæra hvern reit:

// Uppfærðu búnaðarstillingar
opinber aðgerð uppfærsla ($ new_instance, $ old_instance) {
$ dæmi = $ old_instance;
$ instans ['title'] = isset ($ new_instance ['title'])? wp_strip_all_tags ($ new_instance ['title']): '';
$ instans ['text'] = isset ($ new_instance ['text'])? wp_strip_all_tags ($ new_instance ['text']): '';
$ instans ['textarea'] = isset ($ new_instance ['textarea'])? wp_kses_post ($ new_instance ['textarea']): '';
$ instans ['checkbox'] = isset ($ new_instance ['checkbox'])? 1: ósatt;
$ instans ['select'] = isset ($ new_instance ['select'])? wp_strip_all_tags ($ new_instance ['select']): '';
skila $ dæmi;
}

Eins og þú sérð allt sem við þurfum að gera er að athuga hvort hver stilling er og hvort hún er ekki tóm, vistaðu hana í gagnagrunninn. Taktu eftir notkun wp_strip_all_tags () og wp_kses_post () aðgerðanna, þau eru notuð til að hreinsa gögnin áður en þeim er bætt við gagnagrunninn. Í hvert skipti sem þú setur ALLT notandi sem er sent inn í gagnagrunn þarftu að ganga úr skugga um að það sé ekki með neinn skaðlegan kóða. Fyrsta aðgerðin wp_strip_all_tags fjarlægir allt nema grunntexta svo þú getur notað það fyrir hvaða reiti þar sem lokagildið er strengur og önnur aðgerðin wp_kses_post () er sama aðgerð og notuð er fyrir innihald póstsins og það fjarlægir öll merki fyrir utan grunn html eins og krækjur , spannar, deilihluti, myndir o.s.frv.

4 - Aðgerð búnaðarins ()

Græja () aðgerðin er sú sem framleiðir efnið á vefsíðunni. Það er það sem gestir þínir munu sjá. Hægt er að aðlaga þessa aðgerð til að innihalda CSS flokka og sértæk merki sem passa fullkomlega við þemaskjáinn. Hérna er kóðinn (vinsamlegast ekki að hægt sé að breyta þessum kóða með auðveldum hætti að þínum þörfum):

// Birta búnaðinn
búnaður til almenningsaðgerða ($ args, $ dæmi) {

þykkni ($ args);

// Athugaðu búnaðinn
$ title = isset ($ dæmi ['title'])? Apply_filters ('widget_title', $ dæmi ['title']): '';
$ text = isset ($ dæmi ['text'])? $ dæmi ['text']: '';
$ textarea = isset ($ dæmi ['textarea'])? $ dæmi ['textarea']: '';
$ select = isset ($ dæmi ['select'])? $ dæmi ['select']: '';
$ gátreitur =! tómt ($ dæmi ['gátreitur'])? $ dæmi ['gátreitur']: ósatt;

// WordPress kjarna fyrir_widget krók (alltaf með)
echo $ before_widget;

// Birta búnaðinn
echo '
'; // Birta titil búnaðar ef hann er skilgreindur ef ($ titill) { echo $ before_title. $ titill. $ eftir_title; } // Birta texta reit ef ($ texti) { echo '

'. $ texti. '

'; } // Birta textarea reit ef ($ textarea) { echo '

'. $ textarea. '

'; } // Sýna valreit ef ($ velja) { echo '

'. $ velja. '

'; } // Birta eitthvað ef gátreiturinn er sannur ef ($ gátreitur) { echo '

Eitthvað æðislegt

'; } echo '
'; // WordPress kjarna after_widget krókinn (innihalda alltaf) echo $ after_widget; }

Þessi kóði er ekki flókinn, allt sem þú þarft að muna er að athuga hvort breytu er stillt, ef þú gerir það ekki og ef þú vilt prenta það, þá færðu villuboð.

Algjört viðbótartæki fyrir búnað

Ef þú hefur fylgst rétt með ætti viðbótin þín að vera að fullu virk og þú getur sérsniðið það að þínum þörfum. Ef þú hefur ekki fylgst með leiðbeiningunum eða viljað athuga kóðann tvöfalt geturðu farið á Github síðu til að skoða allan kóðann.

Skoða allan kóðann á Github

Niðurstaða

Við sáum að það er mjög áhugavert að búa til búnað í viðbót, nú verður þú að vita hvernig á að búa til einfalt viðbót sem inniheldur búnaður með mismunandi reittegundum og þú lærðir hvernig þú átt að ganga aðeins lengra með því að nota háþróaða tækni til að sérsníða búnaðinn. Til hamingju, þú gerðir ótrúlegt starf!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map