Director:
Evaluare: „; altceva echo '„; ?>
WordPress este construit pentru personalizare. A fost creat în așa fel încât fiecare secțiune să fie personalizabilă. În acest tutorial vom explora una dintre cele mai puternice caracteristici ale WordPress cunoscute ca Tipuri personalizate de postări și modul în care WordPress a atins o nouă înălțime odată cu apariția acestei trăsături minunate.
Dacă doriți să creați rapid și ușor tipuri de posturi personalizate, puteți utiliza pluginul popular WordPress Builder Post Type pe Envato Market, care este conceput pentru a vă permite să creați tipuri personalizate de posturi, taxonomii și șabloane tip post.
Creați orice tip de post personalizat pe care îl puteți imagina fără a scrie niciun cod. Totul se face fără probleme cu sfârșitul de administrare al WordPress, care vă ghidează prin pas cu pas cu o interfață intuitivă de tragere și plasare. Funcționează pe orice site WordPress.org cu orice temă.
Post Type Builder plugin WordPress pe Envato MarketSă presupunem că doriți ca blogul dvs. să aibă o secțiune separată pentru recenzii de filme. Utilizând Tipuri personalizate de posturi puteți crea un nou tip de element, cum ar fi Posts and Pages, care va conține un alt set de date. Va avea un nou meniu de administrare, pagini dedicate de editare, taxonomii personalizate și multe alte utilități necesare publicării complete.
Tipurile personalizate de posturi reprezintă un set nou de opțiuni administrative care apar împreună cu tipurile de post implicite, cum ar fi Mesaje, Pagini, Fișiere atașate etc. Un tip de post particularizat poate stoca orice tip de informație. Are un editor dedicat, media uploader și folosește structura de tabele WordPress existentă pentru a facilita gestionarea datelor. Principalul avantaj al creării de tipuri personalizate de posturi folosind API-ul WordPress este că se echipează bine cu teme și șabloane existente. Tipurile personalizate de posturi sunt, de asemenea, prietenoase SEO din cauza permalinks lor de nifty.
Tipurile de postări personalizate ne ajută să păstrăm diferite tipuri de postări în diferite galerii. Se separă posturile noastre regulate de ceilalți. Destul de simplu!
Aici vom crea un plugin personalizat tip post care va afișa recenzii de filme preferate. Să începem.
Deschideți directorul Plugin WordPress și creați un nou director numit Film-Reviews.
Deschideți directorul și creați un fișier PHP numit Film-Reviews.php.
Deschideți fișierul și adăugați antetul corespunzător din partea de sus.
Înainte de închiderea comenzii PHP, tastați următoarea linie de cod pentru a executa funcția personalizată numită create_movie_review
în timpul fazei de inițializare de fiecare dată când este generată o pagină.
add_action ('init', 'create_movie_review');
Asigurați o punere în aplicare a create_movie_review
funcţie.
funcția create_movie_review () register_post_type ('movie_reviews', array ('labels' => 'add_new_item' => 'Add New Movie Review', 'edit' => 'Edit', 'edit_item' => ',' not_found '=>' Nu au fost găsite recenzii de filme ',' not_found_in_trash '=>' Nu există recenzii de film găsite în coșul de gunoi ',' view_item '=> 'parent' => 'Parent Review Movie'), 'public' => true, 'menu_position' => 15, 'supports' => ('images / image.png', __FILE__), 'has_archive' => true));
register_post_type
funcția face cea mai mare parte a muncii pentru noi. Imediat ce se numește, se pregătește mediul WordPress pentru un nou tip de post personalizat care include diferitele secțiuni din admin. Această funcție are două argumente: primul este unic Nume
din tipul postului personalizat, iar al doilea o matrice care demonstrează proprietățile noului tip de post personalizat. Aici este o altă matrice care conține diferitele etichete, ceea ce indică faptul că șirurile de text vor fi afișate în diferitele secțiuni ale tipului de post personalizat, de ex. 'Nume
'afișează numele tipului postului personalizat în tabloul de bord,'Editați | ×
' și 'vedere
"sunt afișate în Editați | × și Vedere butoane, respectiv. Cred că restul sunt destul de explicative.
În următoarele argumente:
'public' => adevărat
determină vizibilitatea tipului de post personalizat atât în panoul de administrare, cât și în partea frontală.'menu_position' => 15
determină poziția din meniu a tipului de post personalizat."acceptă" => array ("titlu", "editor", "comentarii", "miniatură", "câmpuri personalizate")
determină caracteristicile tipului de post personalizat care urmează să fie afișat."taxonomii" => array (")
creează taxonomii personalizate. Aici nu este definit.'menu_icon' => plugins_url ('images / image.png', __FILE__)
afișează pictograma meniului de administrare.'has_archive' => true
permite arhivarea tipului de post personalizat.Vizitați Codul WordPress register_post_type
pentru mai multe detalii cu privire la diferitele argumente utilizate în tipurile personalizate de posturi.
Salvați o imagine de pictogramă de 16x16 pixeli în dosarul dvs. actual de pluginuri. Acest lucru este necesar pentru pictograma personalizată de tip postare din tabloul de bord.
Activează plugin-ul și asta e, aveți un nou tip de articol personalizat, care are un editor de text, publicarea și caracteristicile imaginilor, controlul comentariilor și editorul de câmpuri personalizate.
Faceți clic pe Adăuga nou opțiunea de a accesa editorul personalizat de tip post. Furnizați un titlu de film, o recenzie și setați o imagine recomandată.
Publicați postarea și faceți clic pe Vizionați filmul pentru a vizualiza examinarea filmului creată în browser.
Mecanismul meta-box utilizează ajutorul sistemului construit în sistemul WordPress pentru meta-box și ajută la adăugarea câmpurilor necesare special pentru tipurile de mesaje personalizate, fără a fi nevoie de câmpurile personalizate implicite în editor.
Deschide Film-Reviews.php fișier și adăugați următorul cod înainte de eticheta de sfârșit PHP. Aceasta înregistrează o funcție care trebuie apelată când interfața de administrare WordPress este vizitată.
add_action ('admin_init', 'my_admin');
Adăugați o implementare a my_admin
care înregistrează o casetă meta și o asociază cu movie_reviews
post tip personalizat.
funcția my_admin () add_meta_box ('movie_review_meta_box', 'Detalii despre filmul filmului', 'display_movie_review_meta_box', 'movie_reviews', 'normal', 'high');
Aici add_meta_box
este funcția utilizată pentru a adăuga casete meta la tipuri personalizate de postări. Explicarea atributelor date:
movie_review_meta_box
este HTML-ul necesar id
atributDetalii despre filmul filmului
este textul vizibil în titlul secțiunii meta-boxdisplay_movie_review_meta_box
este apelul care reda conținutul casetei metamovie_reviews
este numele tipului de post personalizat unde va fi afișată caseta metanormal
definește partea din pagină în care trebuie afișată secțiunea de editare a ecranuluiînalt
definește prioritatea în contextul în care ar trebui afișate caseteledisplay_movie_review_meta_box
FuncţieID, "film_director", adevărat)); $ movie_rating = intval (get_post_meta ($ film_review-> ID, 'film_rating', true)); ?>
Regizor | |
Evaluarea filmului |
Acest cod redă conținutul căsuței meta. Aici am folosit o variabilă de obiect care conține informațiile din fiecare dintre recenziile filmului afișate în editor. Folosind acest obiect am recuperat post ID și a folosit-o ca să interogheze baza de date pentru a obține numele și Rating-ul asociat directorului care, la rândul său, fac câmpurile de pe ecran. Când se adaugă o nouă intrare, atunci get_post_meta
returnează un șir gol, care are ca rezultat afișarea câmpurilor goale în caseta meta.
add_action ('save_post', 'add_movie_review_fields', 10, 2);
Această funcție se numește atunci când posturile sunt salvate în baza de date.
add_movie_review_fields
Funcţie(// movie_review-> post_type == 'movie_reviews') // Stocați datele în tabela de meta postare dacă este prezentă în datele postului dacă (isset ($ movie_review_id, $ movie_review) _POST ['movie_review_director_name']) && $ _POST ['movie_review_director_name']! = ") Update_post_meta ($ movie_review_id, 'movie_director', $ _POST ['movie_review_director_name']); ) && $ _POST ['movie_review_rating']! = ") Update_post_meta ($ film_review_id, 'film_rating', $ _POST ['movie_review_rating']);
Această funcție este executată atunci când posturile sunt salvate sau șterse din panoul de administrare. Aici, după verificarea tipului de date postate, dacă este un tip de post particularizat, acesta verifică din nou pentru a vedea dacă elementele meta-casei au fost atribuite valori și apoi stochează în cele din urmă valorile din acele câmpuri.
În timp ce creăm tipul postului personalizat, am definit o funcție create_movie_review
. Scoateți câmpuri customizate
element din suporturi
deoarece acest lucru nu mai este necesar. Acum, dacă salvați fișierul și deschideți-l Recenzii de filme editor, veți observa două câmpuri în caseta de meta numită Autorul filmului și Evaluarea filmului. În mod similar, puteți adăuga și alte elemente.
Modalitatea corectă de afișare a datelor personalizate tip post este prin utilizarea șabloanelor personalizate pentru fiecare tip de post particularizat. Aici vom crea un șablon care afișează toate Recenzile de filme introduse folosind Film de revizuire Tip de post particularizat.
Deschide Film-Reviews.php fișier și adăugați următorul cod înainte de eticheta de sfârșit PHP. Aceasta înregistrează o funcție care trebuie apelată când interfața de administrare WordPress este vizitată.
add_filter ('template_include', 'include_template_function', 1);
funcția include_template_function ($ template_path) if (get_post_type () == 'movie_reviews') if (is_single ()) // verifică dacă fișierul există mai întâi în temă, theme_file = locate_template (array ('single-movie_reviews.php'))) $ template_path = $ theme_file; altceva $ template_path = plugin_dir_path (__FILE__). '/Single-movie_reviews.php'; returnează calea șablon $;
Aici codul caută un șablon de genul singur (post-tip-name) .php în directorul tematic curent. Dacă nu este găsit, atunci se uită în directorul plugin pentru șablon, pe care îl furnizăm ca parte a pluginului. template_include
cârlig a fost folosit pentru a schimba comportamentul implicit și pentru a impune un anumit șablon.
După salvarea fișierului plugin deschis anterior, creați un alt fișier PHP numit single-movie_reviews.php și puneți următorul cod în el.
'movie_reviews',); $ loop = noua valoare WP_Query ($ mypost); ?> have_posts ()): $ loop-> the_post ();?>> Titlu:
Director:
Evaluare: „; altceva echo '„; ?>
Aici am creat un șablon de pagină de bază utilizând buclă. query_posts
Funcția returnează elementele personalizate tip post și le afișează utilizând buclă. Desigur, este doar o bucla de bază și puteți juca cu ea așa cum doriți. De asemenea, puteți utiliza stilurile CSS adecvate pentru a formata elementele în consecință.
Trebuie să salvați două imagini cu pictograme stea cu 32x32 pixeli în dosarul pluginului. Nume-le icon.png și grey.png respectiv. Asta e tot, acum recenziile filmului sunt afișate pe o singură pagină sortată după dată.
În următorul meu tutorial voi acoperi mai multe caracteristici ale Tipurilor de postări personalizate cum ar fi crearea unei pagini arhivate, crearea de taxonomii personalizate, coloane personalizate etc. Vă rugăm să nu ezitați să oferiți sugestiile dvs. valoroase.
Și nu uitați, dacă aveți probleme în a face acest lucru manual, puteți lua în considerare soluția de plugin simplu.
Sau, dacă aveți nevoie de ajutor cu orice aspect al WordPress, încercați să comandați serviciile de suport WordPress rentabile pe Envato Studio. Iată câteva exemple:
Obțineți o oră de ajutor individualizat la un expert de la WordPress. Pentru doar 50 de dolari, puteți obține o gamă largă de probleme rezolvate rapid și ușor.
Acest serviciu vă va oferi liniște atunci când vă actualizați temele sau pluginurile la ultima versiune. Veți primi suport solid pentru toate tipurile de teme și plugin-uri diferite, pentru a vă asigura că site-ul dvs. va funcționa fără probleme.
Aveți un site WordPress rupt? Acest dezvoltator WordPress experimentat va restaura site-ul dvs. într-o problemă în timp util, stabilind tot felul de probleme, inclusiv:
După ce a lucrat timp de mulți ani cu WordPress, dezvoltatorul britanic Ryan Carter a devenit expert în CMS. Dacă aveți nevoie de sfaturi despre cel mai bun mod de a realiza lucrurile în WordPress, puteți să rezervați o oră de timp al lui Ryan pentru a viziona și a discuta despre obiectivele dvs. și cum să le realizați.