Մենք տեսել ենք նախքան բլոգավարման բազմաթիվ խորհուրդներ և գործիքներ: Դե, այսօր մենք կսովորենք, թե ինչպես կարելի է ստեղծել լավ գործիք ձեր բլոգի համար – FAQ էջի հավելված: Բայց ամենակարևորը միայն plugin- ը չէ, այլև այն, ինչ կարող ես անել այս սկզբունքով: Դուք կսովորեք, թե ինչպես պահպանել ցանկացած տեսակի տվյալներ ձեր WP կայքում և ինչպես այն ինտեգրվել արտաքին գրադարանների հետ (ինչպես jQuery UI) `ստեղծելով անհատական ​​բաղադրիչներ ձեր կայքի համար: Եկեք սկսենք!


Գաղափար, ցուցադրություն & Ներբեռնեք

ցուցադրություն

Մեր նպատակն այստեղ `ստեղծել մի plugin, որը կարող է օգտագործվել շատ բաների համար, բայց բավականին լավ տեղավորվում է FAQ էջերի համար.

Բայց դրանից զատ, մեր հիմնական ձեռքբերումը կլինի WordPress- ի սովորական փոստերի տեսակների, կարճոդների փոխանակումը, արտաքին JS / jQuery plugin- ի հետ փոխազդեցության ընկալումը: Այս գաղափարի միջոցով դուք կարող եք ստեղծել շատ նյութեր `հիմնվելով այլ խենթ plugin- ների վրա, որոնք կարող եք գտնել այնտեղ, սա ձեզ համար միայն ելակետն է, հարգելի Padawan.

Այսպիսով, այստեղ դուք կարող եք գտնել jQuery API- ի ցուցադրում այն ​​բաղադրիչի համար, որը մենք կօգտագործենք, բայց իսկապես սառը իրերը այն ծածկագիրն են, որն օգտագործվում է այդ բաղադրիչն ստեղծելու համար (PHP).

Warming up – Plugin ֆայլը և Custom Post Type- ը

Առաջին հերթին մեր տվյալները պահելու համար մենք պետք է ստեղծենք պատվերով հաղորդագրության տեսակ.

Պատվերով գրառման տեսակները WP- ի մոգության մեծ մասն են, այն թույլ է տալիս ստեղծել նոր տվյալների տիպ (նման հաղորդագրություններ, էջեր, հավելվածներ ..), որպեսզի այն հնարավոր լինի անվանել և շահարկել ՝ օգտագործելով WP գործառույթները: Սա կարող է թվալ պարզ սկսնակների համար, բայց միայն հին ժամանակների PHP ծրագրավորողները (մի՞թե դա դեռ մի բան է) գիտեն, թե որքան դժվար էր պարզապես տվյալների շտեմարանների միացումը և պահումը: Էլ չենք ասում, որ դինամիկ կերպով ստեղծում են նոր տվյալների տեսակներ, սա նուրբ է, բայց թույլ է տալիս մեծ ճկունություն հաղորդել մեր ծածկագրում.

Մեզ համար դա ունենալու համար մենք պետք է մի plugin, բայց հավանաբար դուք արդեն ծանոթ եք այս հայեցակարգին: Plugins- ը նման է Lego- ի բլոկների WordPress- ի, նրանք ավելացնում կամ վերափոխում են ընթացիկ ֆունկցիոնալությունը ՝ օգտագործելով ինչ-որ կոդ, որը հեշտությամբ կարելի է միացնել (duh!) Կամ նաև անջատել, եթե ցանկանում եք:.

Plugin ստեղծելու համար այնպես, որ WP- ն իրեն ճանաչի, ձեզ հարկավոր է 2 բան.

  1. Ստեղծեք ֆայլ ձեր wp- պարունակության / plugins- ի ներսում /
  2. Այդ ֆայլի սկզբում ավելացրեք մետատվյալներ, որպեսզի WP- ն հասկանա, թե ինչի մասին է խոսքը

Հիշեք, որ ֆայլի անունը պետք է լինի եզակի, այնպես որ, երբ ինչ-որ մեկը տեղադրում է ձեր plugin- ը (նույնիսկ ինքներդ ձեզ), չի լինի որևէ հակասություն ընթացիկ plugin- ների հետ: Մեր դեպքում ավելի լավ կազմակերպման համար մենք կավելացնենք նոր թղթապանակ ՝ faq-whs անունով, իսկ դրա ներսում ՝ ֆայլ, որը կոչվում է faq-whsr.php.

Այժմ մետատվյալի համար պարզապես ավելացրեք այսպիսի մի բան ձեր plugin- ի ֆայլի սկզբում (անմիջապես հետո) <?php):

meta_01

Ինչը նշանակում է:

  • Plugin Name: Գեղեցիկ անուն, որը ցույց կտա ձեր wp-admin- ում > plugins միջերես
  • Plugin URI. Եթե ցանկանում եք հղում ավելացնել ձեր plugin- ի էջին (փաստաթղթեր, օրինակներ, վաճառքի էջ)
  • Նկարագրություն. Սա մեկն է այն փոքր կետը, որը ցույց է տրված ձեր wp-admin- ում > plugins միջերես: Այն պարզ պահեք, որպեսզի օգտվողները հիշեն, թե ինչի համար է դա
  • Հեղինակ / Հեղինակ URI. Անձը / ընկերությունը, որը ստեղծել է plugin- ը և հղումը վարկերի համար
  • Արտոնագիր. Այսպիսով, օգտվողները կիմանան, թե ինչ կարող են / չեն կարող անել ձեր plugin- ի հետ

Լավ, հիմա մենք ստեղծեցինք մեր plugin- ը, ավելացրեց որոշ համապատասխան մետատվյալներ: Հենց որ պահեք ձեր plugin ֆայլը, դուք պետք է կարողանաք տեսնել այն ձեր wp-admin ինտերֆեյսում

Եկեք ակտիվացնենք այն և տեսնենք, թե ինչ է տեղի ունենում.

Սպասեք, ոչինչ: Դե, դա լավ բան է, եթե հիմա ինչ-որ բան սխալ էր, սխալ եք նկատում: Եկեք այժմ տեղափոխվենք մեր փոստային հաղորդագրության տիպի ստեղծում.

Մեր դեպքում ԽԿԿ-ն ՀՏՀ կետն է, բայց դուք կարող եք ստեղծել գրքեր, տեսանյութեր, ցուցմունքներ և այլն: Այստեղ պետք է հիշել կարևորը. Գործառույթների անունները պետք է լինեն եզակի: Կրկնեք հիմա ինձ հետ. Գործառույթների անունները պետք է լինեն եզակի, գործառույթների անունները պետք է լինեն եզակի: Հասկացա? Լավ, դա ձեզ մեծ դժվարություն կփրկի մինչև մենք կարողանանք օգտագործել OOP (միգուցե հաջորդ ձեռնարկում).

Վիզարդը կատարվում է այս ծածկագրով.

ց.թ.

Եվ սա նշանակում է, որ համապատասխան մասերը.

  • $ պիտակներ – դա պիտակների և տեքստի զանգված է `ձեր wp-admin տարածքի տարբեր հատվածների համար: Ուստի WP- ն կիմանա մեր իրերը զանգահարելու պատշաճ ձևը
  • աջակցում – սա ասում է այն, ինչ կարող եք տեսնել wp-admin- ում > ՀՏՀ > նոր էկրան: Մեր դեպքում կունենանք վերնագիր, խմբագիր (բովանդակության հիմնական տուփ), հեղինակ, վերանայումներ և մաքսային դաշտեր (եթե դրանք ցանկանում եք).
  • տաքսոնոմիա – այստեղ դուք ասում եք WP- ին, թե որ տաքսոնոմներն են թույլատրվում (կատեգորիաներ, պիտակներ կամ սովորական տաքսոնոմներ)
  • Register_post_type (‘faq_whsr ‘, $ args) – սա ասում է WP- ին.« Հե ,յ, ստեղծեք ID- ի հետ նոր պատվերով գրառման ձև, քանի որ faq_whsr ՝ օգտագործելով $ փաստարկները »:.

Խնայեցեք այն և պահեք ձեր շունչը: Այժմ դուք պետք է տեսնեք նոր բաժին ձեր հիմնական wp-admin ընտրացանկում

Սպասեք, դա այդպես է: Այո. Այդ հատվածը ստեղծում է ԽԿԿ ամբողջ գործառույթը: Եթե ​​դուք չեք գտնում այս սառը, սպասեք, որ այն ավելի սառչում է հաջորդ բաժնում.

Նախքան wp-admin- ը թողնելը, ավելացրեք մի փոքրիկ տվյալների տվյալներ (առնվազն 2 կարգի մի քանի ֆաքս).

Front-End – WP x jQuery փոխազդեցություն

Հիմա վերջապես եկել է որոշ գործողություններ տեսնելու ժամանակը, և մենք դրա համար կօգտագործենք jQuery UI Accordion տարր.

jQuery UI- ն ունի գրեթե նույն առավելությունները, ինչ ինքնին jQuery:

  • Դրա վրա աշխատում են շատ ծրագրավորողներ
  • Խաչաձև զննարկիչ և շարժական պատրաստ կոդ
  • Լավ փաստագրված է
  • Լավ է խաղում WP- ի հետ (WP- ն ինքն է օգտագործում դրանք)

Այժմ հարցն այն է, թե ինչպես ենք մենք դա անվանում?

Դրա համար կա 2 մոտեցում.

  1. Վատ մաքուր / պիտակները ձեր wp_head- ում
  2. Հաճելի wp_enqueue

Մենք այսօր շատ սխալ ժամանակ չենք կորցնելու սխալ մոտեցմամբ, բայց լավը, ըստ էության, ասում է WP- ին «հե budյ բարեկամ, մեզ հարկավոր է jQuery UI մեր ծածկագրի ինչ-որ պահի, խնդրում ենք ներառել այն էջում»: Այս եղանակով WP- ն կարող է ստուգել, ​​թե արդյոք որևէ մեկը արդեն ներառել է այն, կամ ներառել է դրա այլ տարբերակ և խուսափել կրկնօրինակված գրադարանների մեծ դժվարություններից: Լավ, ինչպես կարելի է այդ գեղեցիկ զրույցը ծածկագրել կոդի մեջ?

Օգտագործելով enqueue գործառույթը:

enqueue_02

Կարճ կոդ

Եվ հիմա մենք վերադառնում ենք wp-admin- ին: Մենք ունենք ՀՏՀ առարկաները, և մենք ունենք գրադարան, որպեսզի իրերը ձևավորեն այնպես, ինչպես ուզում ենք, էլի ինչ չկա: Դե ինչ, մենք պետք է զանգահարենք իրերը!

Մենք դրա համար շատ տարբերակներ ունենք, բայց այս գործի համար ամենահեշտը դյուրանցման կոդ ստեղծելն է: Կարճ կոդը մի բան է, որը դուք ավելացնում եք ձեր բովանդակության դաշտում (էջերի, գրառումների, ԽԿԿ-ների համար …) և WP- ն իրոք գործառույթ է որոնում: Կա կարճ տեքստի երկու տեսակ.

  1. [ինքնահաստատում] – պիտակների պես կամ
    այս տիպի կարճ կոդը պարզապես ինչ-որ պահի կոչում է գործառույթ ՝ սա է մեր տղան
  2. [փաթաթված] Բովանդակություն [/ փաթաթված] – Սա նման է պիտակներին

    կամ և, ըստ էության, կարող է վերափոխել դրա բովանդակությունը, կամ օգտագործել բովանդակությունը որպես փաստարկ.

Տեսնենք, թե ինչպես է այն աշխատում այն ​​ժամանակ: Ստեղծեք նոր էջ ձեր wp-admin- ում և ավելացրեք այս կոդը այնտեղ ՝

[faq-whsr]

Խնայեք և այցելեք այդ էջը և տեսեք, թե ինչ է տեղի ունենում…

Ուղղակի կատակում եմ, մի բան չի՞ ստացվի: Դե, սա այն պատճառով, որ մենք դրա համար դեռ գործառույթ չենք ստեղծել.

Ավելացնել այս ձեր plugin ֆայլում:

կարճ կոդ_02

Այժմ թարմացրեք ձեր էջը և ես խոստանում եմ, որ իսկապես շատ զով բան կլինի.

Հիանալի, հա՞: Այժմ դուք կարող եք տեսնել, որ այն հոսում է, և երկինքը հիմա սահմանն է ձեզ համար: Այն, ինչ անում է այդ ծածկագիրը, պարզապես WP- ին ասելն է, որ կա մի կարճ կոդ, որը կոչվում է [faq-whsr], և եթե WP- ն գտնում է, WP- ն պետք է գործառույթ կատարի էջի այդ կետում:.

Մեր դեպքում մենք պետք է հասնենք այս կառուցվածքին jQuery UI վահանակի ստեղծման համար.

api_02

Դրա համար մենք կստեղծենք WP հարցում, բեռնեք մեր ՀՏՀ-ի տարրերը և դրանց բովանդակությունը: Փոփոխական կոդերի գործառույթը փոխարինեք հետևյալով.

կարճոդ-հիմնական_02

Լավ, հիմա ձեր ՀՏՀ նյութերը կանվանվեն: Մեր արածը wp_query- ին կանչելն է, որպեսզի զանգահարենք մեր սովորական հաղորդագրության տիպը, այնուհետև այն փոխանցենք կարճուղղիչի վերադարձին, որպեսզի WP- ն ցուցադրի բոլորին `ցանկալի կառուցվածքին հետևելով.

Լավ է, բայց ինչ-որ բան բացակայում է, այնպես չէ: Իսկ ի՞նչ կարելի է ասել այնտեղ: Դե, մենք կարող ենք ավելացնել տարբերանշանի կարճ տարբերակ, եկեք տեսնենք, թե ինչպես կարելի է ստեղծել մեր կարճ կոդով WP_Query փաստարկներից մի քանիսը.

կարճ կոդ-եզրափակիչ_02

Այս կերպ Դուք կարող եք զանգահարել իրեր հետևյալ փաստարկներով (կարող եք միավորել այնքան, որքան ցանկանում եք).

  • կատու – կատեգորիայի ID (բազմակի ավելացված է որպես զանգված) [faq-whsr cat = 1]
  • category_name – կատեգորիայի անվանումը [faq-whsr kategor_name = ”սնունդ”]
  • պատվեր – ASC կամ DESC (DESC- ը դեֆոլտ է) [faq-whsr order = “ASC”]
  • Պատվիրել. փոխել իրերը պատվիրելու չափանիշները [faq-whsr պատվիրել = “վերնագիրը”]
  • posts_per_page – փոխել բեռնված իրերի քանակը [faq-whsr posts_per_page = 5]

Բայց ինչպես ասացի, երկինքը սահմանն է ձեզ համար իմ ընկերը: Ահա WP_Query- ի մի քանի տարբերակ, որոնք կարող եք իրականացնել և օգտագործել.

  • Հեղինակ
  • Կատեգորիա (ավելացնելով `բացառել ընտրանքները not_in- ով)
  • Որոնել (զով է, եթե ուզում եք օգտվողներին հնարավորություն տալ որոնման միջոցով դրանց միջոցով)
  • Հատուկ դաշտ (քանի որ ՀՏՀ-ի իրերն ունեն, դուք կարող եք օգտագործել դրանք հատուկ հատուկ դաշտերով և արժեքներով իրերը բեռնելու համար)

Հիմա հերթը ձերն է

Սա ձեզ համար պարզապես ելակետ է, ինչպես տեսնում եք: Մենք բոլորս կարող ենք սովորել մի շարք այլ հիանալի բաներ ՝ այս հասարակ plugin- ը բարելավելու համար, ահա մի քանի առաջարկներ, որոնք դուք պետք է ավելի խորը փորեք.

  • Արձագանքող ձևավորում
  • Widget- ի ստեղծում
  • Plugin- ը ակտիվացրեք / անջատեք կեռիկները
  • Միջազգայնացում
  • OOP
  • Անհրաժեշտության դեպքում միայն որոշակի ծածկագրերի տեղադրում (որոշակի էջերի համար)

Մի մոռացեք թողնել ձեր մտքերը մեկնաբանություններում: Եվ ահա ձեզ համար մեր մարտահրավերն է. Հնարավո՞ր է եք կարճ կետի համար կիրառել «լռելյայն իր» տարբերակ (այնպես որ, երբ էջը բեռնվում է, մեկ այլ կետ էլ կբացվի, առաջինը չէ): Ինչպե՞ս կանեիր դա?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me