Unul dintre cititorii noștri ne-a întrebat cum să creeze șabloane personalizate pentru postări unice în WordPress.
La WPBeginner, am ajutat mulți proprietari de site-uri web să-și îmbunătățească blogurile cu aspecte unice pentru postările individuale. Șabloanele personalizate pentru postări unice vă permit să utilizați diferite designuri pentru postările de pe blog, oferindu-le fiecăreia un aspect distinct. Multe teme WordPress oferă câteva șabloane de pagină, dar puteți crea și propriile șabloane dacă este necesar.
În acest articol, vă vom arăta multiple metode pentru a crea cu ușurință șabloane personalizate pentru postări unice în WordPress, astfel încât să puteți alege pe cea care funcționează cel mai bine pentru nevoile dumneavoastră.

Când aveți nevoie de un șablon personalizat pentru postări unice?
Uneori, este posibil să dorești un aspect și o senzație diferită pentru anumite postări pe site-ul tău WordPress. De exemplu, este posibil să dorești să folosești un alt aspect pentru articolele sau poveștile prezentate într-o anumită categorie.
Aici aveți nevoie de un șablon personalizat pentru postări unice în WordPress.
În mod implicit, WordPress folosește șablonul de postare unică bazat pe ierarhia șabloanelor WordPress. Toate temele vin cu un șablon single.php, iar acesta este utilizat în mod implicit pentru toate postările dvs. unice.
Unele teme pot include, de asemenea, șabloane suplimentare sau opțiuni de layout pe care le poți folosi.
Este foarte asemănător cu crearea unui șablon de pagină personalizat. Majoritatea temelor WordPress vin, de asemenea, cu șabloane de pagină pe care le puteți utiliza în timp ce editați o postare sau o pagină în WordPress.

Acestea fiind spuse, să aruncăm o privire la cum să creăm cu ușurință șabloane personalizate pentru postări unice în WordPress. Vă vom arăta mai multe metode, astfel încât să puteți folosi cea care funcționează cel mai bine pentru dvs.
- Crearea de șabloane unice pentru postări folosind editorul de blocuri
- Crearea de șabloane personalizate pentru postări unice folosind SeedProd
- Utilizarea setărilor temei pentru a crea layout-uri de postări individuale
- Crearea manuală a șabloanelor personalizate pentru postări unice cu cod
- Crearea de șabloane personalizate pentru postări individuale pe categorii
- Crearea șabloanelor personalizate pentru postări individuale pentru anumiți autori
Crearea șabloanelor pentru postări unice folosind editorul de blocuri
Această metodă nu creează cu adevărat un șablon de postare și este limitată în flexibilitate. Cu toate acestea, este cea mai ușoară modalitate de a salva propriile aspecte ale postărilor individuale și apoi de a le refolosi.
Editorul de blocuri WordPress implicit vine cu o funcționalitate încorporată care vă permite să salvați și să refolosiți blocuri. Un astfel de bloc reutilizabil este blocul grup.
Blocul de grup vă permite să plasați mai multe blocuri și întregi layout-uri de postări într-un singur grup. Puteți apoi salva acest bloc de grup și îl puteți reutiliza în celelalte postări.
Să vedem cum să folosim blocul de grup pentru a salva șabloanele personalizate de postări.
Mai întâi, trebuie să creați o nouă postare în WordPress. După aceea, pur și simplu adăugați un bloc de grup în zona de conținut.

Acum puteți începe să adăugați blocuri în blocul de grup pentru a crea un aspect de postare unică pentru blogul dvs. WordPress.
Puteți adăuga orice blocuri doriți, inclusiv coloane, media și text, imagini de copertă și multe altele.

Odată ce sunteți mulțumit de aspectul pe care l-ați creat, trebuie să mutați mouse-ul în sus și să selectați blocul de grup.
Pur și simplu faceți clic pe pictograma meniului cu trei puncte și apoi selectați opțiunea „Adăugați la blocurile reutilizabile”.

În continuare, trebuie să furnizați un nume pentru blocul reutilizabil și apoi să faceți clic pe butonul Salvare. WordPress va salva acum blocul dvs. reutilizabil, inclusiv toate blocurile din interiorul blocului de grup.
Puteți apoi edita orice postare existentă pe site-ul dvs. web sau crea una nouă. Pe ecranul de editare a postării, pur și simplu faceți clic pe butonul adăugare bloc nou și căutați blocul dvs. salvat sub fila „Reutilizabile”.

Adăugați blocul la postarea dvs. și WordPress va încărca întregul grup de blocuri cu toate blocurile și setările așa cum le-ați salvat.
Această metodă vă permite să salvați aspectele personalizate. Cu toate acestea, nu vă permite să modificați modul în care tema dvs. gestionează postările individuale.
Dacă doriți o flexibilitate mai mare, continuați să citiți următorul pas.
Crearea de șabloane personalizate pentru postări unice folosind SeedProd
Cel mai simplu mod de a crea un șablon personalizat pentru postări individuale este prin utilizarea SeedProd. Este cel mai bun plugin constructor de site-uri web WordPress și poate crea layout-uri frumoase de site-uri web și șabloane personalizate fără a scrie niciun cod.
Puteți folosi constructorul drag-and-drop al SeedProd pentru a crea o temă WordPress complet personalizată, inclusiv șabloane personalizate pentru postări individuale.
Primul lucru pe care trebuie să-l faceți este să instalați și să activați pluginul SeedProd. Pentru mai multe detalii, consultați ghidul nostru pas cu pas despre cum să instalați un plugin WordPress.
La activare, trebuie să introduceți cheia de licență. Puteți găsi aceste informații în contul dvs. pe site-ul SeedProd.

După aceea, este timpul să creați o temă WordPress personalizată. Acest lucru este mult mai simplu decât pare.
Crearea unei teme WordPress personalizate
Mai întâi, trebuie să accesați pagina SeedProd » Theme Builder . Aici, veți folosi una dintre temele predefinite ale SeedProd ca punct de plecare. Aceasta va înlocui tema existentă de WordPress cu un design nou, personalizat.
Puteți face acest lucru făcând clic pe butonul 'Teme'.

Vi se va afișa o listă de teme proiectate profesional pentru diferite tipuri de site-uri web. De exemplu, există șabloane numite „Modern Business”, „Marketing Agency” și „Mortgage Broker Theme”.
Parcurgeți opțiunile și selectați-o pe cea care se potrivește cel mai bine nevoilor dvs. făcând clic pe pictograma de bifă.

Odată ce ați ales o temă, SeedProd va genera toate șabloanele de temă de care aveți nevoie, inclusiv unul pentru pagini unice și altul pentru postări unice.
Fiecare șablon vine configurat cu aspecte atractive și conținut placeholder, ușor de personalizat.

Pentru a afla mai multe despre crearea unei teme cu SeedProd, consultați ghidul nostru despre cum să creezi ușor o temă WordPress personalizată fără niciun cod.
Personalizarea șablonului implicit pentru postări individuale
SeedProd facilitează personalizarea șablonului implicit „Single Post” folosind un constructor de pagini drag-and-drop.
Pur și simplu faceți clic pe linkul „Edit Design” (Editare design) găsit sub șablon. Aceasta va deschide șablonul postării dvs. în editorul vizual al SeedProd.

Editorul vizual al SeedProd are un layout cu 2 coloane. În stânga, veți găsi blocuri și secțiuni pe care le puteți adăuga la designul dvs.
În dreapta se află o previzualizare a șablonului unde poți vedea modificările tale în timp real.

Este, de asemenea, ușor să personalizați aspectul șablonului postării dvs. Pur și simplu faceți clic pe orice bloc pentru a vedea setările sale în coloana din stânga.
De exemplu, dacă faceți clic pe titlul postării, atunci veți putea vedea setările acesteia. Acum puteți schimba alinierea, dimensiunea fontului, nivelul antetului și multe altele.

Apăsarea filei Avansat vă permite să schimbați culorile fonturilor, spațierea și alte stiluri.
Puteți adăuga blocuri suplimentare trăgându-le din coloana din stânga în coloana de previzualizare. SeedProd folosește etichete de șablon pentru a prelua conținut dinamic precum titluri de postări, imagini de prezentare, comentarii și multe altele. Acest lucru vă permite să adăugați conținut la șablon fără a fi nevoie să editați fiecare postare individual.
De exemplu, puteți adăuga un bloc de Postări la sfârșitul conținutului postării dvs. Acesta va afișa postări recente pe care vizitatorii dvs. ar putea dori să le citească atunci când termină postarea curentă. Acest bloc va fi afișat automat pe toate postările care utilizează acest șablon.

Apoi, puteți modifica setările blocului Postări pentru a personaliza conținutul afișat.
De exemplu, puteți afișa conținut din categorii specifice, puteți utiliza un aspect pe două coloane și puteți modifica numărul de postări afișate.

Simțiți-vă liber să petreceți timp experimentând cu diferite blocuri și explorând setările acestora.
După ce ai creat ceva ce ai dori să folosești ca șablon de postare, este timpul să-l salvezi făcând clic pe butonul verde ‘Save’ din colțul din dreapta sus. După aceea, poți închide editorul vizual SeedProd făcând clic pe pictograma de închidere ‘X’.

Puteți personaliza restul temei WordPress în același mod. Dar dacă aveți nevoie de puțin ajutor, consultați ghidul nostru pas cu pas despre cum să creați o temă WordPress personalizată cu SeedProd.
Când sunteți mulțumit de aspectul general, asigurați-vă că comutatorul ‘Enable SeedProd Theme’ este activat. Site-ul dvs. WordPress va folosi acum tema SeedProd și șablonul personalizat pentru postări unice.

Utilizarea setărilor temei pentru a crea layout-uri personalizate pentru postări unice
Multe teme WordPress populare vin cu setări încorporate pentru a personaliza aspectul șablonului dvs. de postare individuală.
Dacă tema ta suportă aceste setări, atunci vei putea să le găsești pe ecranul de editare a postării. Opțiunile disponibile se pot schimba în funcție de tema pe care o folosești.
De exemplu, tema Astra oferă opțiuni de personalizare la editarea unei postări unice. Folosind aceste opțiuni, puteți schimba barele laterale, puteți ascunde antetele, titlurile, meniurile și multe altele.

Pe de altă parte, multe dintre temele WordPress de top vin cu șabloane gata de utilizat pe care le puteți folosi.
Dacă tema dvs. include șabloane de postări unice, le veți găsi sub panoul 'Șablon' sau 'Atribute postare' în timp ce editați o postare.

Aceste șabloane sunt layout-uri complete pe care le puteți utiliza fără nicio configurare necesară.
Crearea manuală a șabloanelor personalizate pentru postări individuale cu cod
Această metodă este puțin avansată, deoarece necesită editarea fișierelor temei, copierea și lipirea codului și, opțional, adăugarea de CSS personalizat. Dacă nu ați mai făcut acest lucru înainte, consultați tutorialul nostru despre cum să copiați și să lipiți cod în WordPress.
Mai întâi, trebuie să deschideți un editor de text simplu pe computer, cum ar fi Notepad, și să lipiți următorul cod în el:
<?php
/*
* Template Name: Featured Article
* Template Post Type: post, page, product
*/
get_header(); ?>
Acest cod definește un nou șablon numit „Articol recomandat” și îl face disponibil pentru tipurile de postări post, pagină și produs post types.
Ar trebui să salvați acest fișier ca wpb-single-post.php pe desktop. Apoi, trebuie să adăugați șablonul pe site-ul dvs. WordPress. Pentru a face acest lucru, trebuie să folosiți un client FTP pentru a încărca fișierul în folderul temei dvs. curente.
Acum, vă puteți conecta la zona de administrare WordPress și puteți crea sau edita o postare. Derulați puțin în jos pe ecranul de editare a postării și veți observa un nou panou „Șablon” sau o casetă meta „Atribute postare” cu o opțiune de selectare a șablonului.

Veți vedea acolo șablonul dvs. personalizat „Articolul recomandat”.
În acest moment, șablonul dvs. este practic gol, așa că selectarea acestuia va afișa pur și simplu un ecran alb.
Să rezolvăm asta.
Cea mai ușoară modalitate de a face acest lucru este prin copierea codului din fișierul single.php al temei dvs. și utilizarea acestuia ca punct de plecare. Va trebui să deschideți fișierul single.php și apoi să copiați totul după linia get_header().
Apoi, trebuie să lipiți acest cod la sfârșitul fișierului wpb-single-post.php. Acum puteți salva acest fișier și îl puteți încărca înapoi pe serverul dvs.
Cu toate acestea, acest lucru va arăta exact la fel ca șablonul dvs. curent de postare unică. Acum puteți începe să faceți modificări la șablonul dvs. personalizat de postare unică.
Puteți adăuga propriile clase CSS personalizat, eliminați barele laterale, creați un șablon pe lățime completă sau orice doriți.
Crearea șabloanelor personalizate pentru postări individuale pe categorii
Doriți să utilizați un șablon personalizat pentru postări unice bazat pe categorii? De exemplu, puteți oferi postărilor din categoria de călătorii un layout diferit față de postările din categoria de fotografie.
Puteți face acest lucru folosind fie SeedProd Theme Builder, fie cod.
Crearea de șabloane personalizate pentru postări individuale pe categorii folosind SeedProd
Mai devreme, am acoperit cum să personalizăm șablonul implicit pentru postări unice al SeedProd. Dar nu se oprește aici. Cu SeedProd, puteți adăuga oricâte șabloane de postări personalizate doriți, cum ar fi un aspect diferit pentru fiecare categorie de postări.
Pentru a adăuga un nou șablon de postare unică, faceți clic pe linkul ‘Duplicate’ de sub șablonul de postare original. Un nou șablon numit „Single Post – Copy” va fi creat și adăugat în partea de sus a paginii de șabloane a temei.

Puteți personaliza noul șablon în același mod în care ați personalizat anterior șablonul implicit Single Post. Pur și simplu faceți clic pe linkul „Edit Design” al șablonului și faceți orice modificări doriți folosind editorul vizual al SeedProd.
Când ați terminat de personalizat șablonul, va trebui să adăugați câteva condiții, astfel încât SeedProd să știe ce postări ar trebui să folosească acest șablon. În acest caz, dorim ca acesta să fie afișat la vizualizarea postărilor dintr-o anumită categorie.

Puteți face acest lucru făcând clic pe linkul „Editați Condițiile” șablonului, iar o nouă fereastră va apărea.
Aici, poți da șablonului un nume și o prioritate. Șablonul implicit Single Post are o prioritate de 0, așa că asigură-te că dai acestui șablon o prioritate mai mare, astfel încât să fie afișat pe categoriile potrivite.

Sub „Condiții”, selectați „Are Categorie” din al doilea meniu derulant, apoi introduceți numele categoriei în ultimul câmp. De exemplu, dacă doriți ca doar postările din categoria fotografie să folosească acest aspect, introduceți „fotografie”.
Când ați terminat, faceți clic pe butonul „Salvare” și acum acest șablon va fi utilizat pentru toate postările din categoria corespunzătoare.
Aceasta este cea mai ușoară modalitate de a crea mai multe șabloane personalizate pentru postări în WordPress. Nu necesită cunoștințe de cod și nu va strica accidental fișierele temei.
Crearea de șabloane personalizate pentru postări unice pe categorii folosind cod
Aceasta este o altă metodă pentru cei care se simt confortabil să adauge cod în fișierele temei lor.
Mai întâi, trebuie să adăugați acest cod în fișierul `functions.php` al temei dvs. sau într-un plugin de fragmente de cod.
/*
* Define a constant path to our single template folder
*/
define(SINGLE_PATH, TEMPLATEPATH . '/single');
/**
* Filter the single_template with our custom function
*/
add_filter('single_template', 'my_single_template');
/**
* Single template function which will choose our template
*/
function my_single_template($single) {
global $wp_query, $post;
/**
* Checks for single template by category
* Check by category slug and ID
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
endforeach;
}
Acest cod verifică mai întâi dacă WordPress solicită un singur post. Dacă este așa, atunci îi spune WordPress să caute șablonul în directorul /single/ al temei tale WordPress.
Acum, trebuie să adăugați fișierele de șablon definite de acest cod.
Conectați-vă la găzduirea WordPress folosind un client FTP sau Managerul de fișiere din cPanel și accesați /wp-content/themes/folderul-temei-tale/.
În interiorul folderului temei dvs. curente, trebuie să creați un nou folder numit „single”. Apoi, trebuie să deschideți acest folder și să creați un nou fișier. Continuați și denumiți acest fișier single-cat-{category-slug}. Înlocuiți {category-slug} cu slug-ul real al categoriei dvs.
De exemplu, dacă aveți o categorie numită „Știri”, atunci veți crea fișierul single-cat-news.php. Dacă aveți o categorie numită „Sfaturi de călătorie”, atunci creați un șablon single-cat-travel-tips.php și așa mai departe.

Acum, aceste fișiere șablon vor fi complet goale. Ca punct de plecare, puteți copia conținutul fișierului single.php din folderul temei și îl puteți lipi în fiecare dintre aceste șabloane. După aceea, va trebui să editați aceste șabloane pentru a face modificările dorite.
Când ați terminat, puteți accesa site-ul dvs. web și vizualiza o postare. Aceasta va folosi șablonul pe care l-ați creat pentru categoria în care este clasificată postarea.
Acum, să presupunem că aveți o postare în două categorii: Știri și Sfaturi de călătorie. WordPress va afișa automat șablonul pentru „Știri” deoarece apare primul în ordine alfabetică.
Pe de altă parte, dacă ați clasificat o postare într-o categorie și nu ați creat un șablon pentru acea categorie, atunci WordPress va reveni la șablonul implicit single.php al temei dvs.
Crearea șabloanelor personalizate pentru postări unice pentru anumiți autori
Să presupunem că doriți ca postările scrise de un anumit autor să arate diferit pe site-ul dvs. Puteți face acest lucru folosind codul, urmând aceeași tehnică pe care am arătat-o pentru categorii.
Mai întâi, trebuie să adăugați acest cod în fișierul `functions.php` al temei dvs. sau într-un plugin de fragmente de cod.
/**
* Define a constant path to our single template folder
*/
define(SINGLE_PATH, TEMPLATEPATH . '/single');
/**
* Filter the single_template with our custom function
*/
add_filter('single_template', 'my_single_author_template');
/**
* Single template function which will choose our template
*/
function my_single_author_template($single) {
global $wp_query, $post;
/**
* Checks for single template by author
* Check by user nicename and ID
*/
$curauth = get_userdata($wp_query->post->post_author);
if(file_exists(SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php'))
return SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php';
elseif(file_exists(SINGLE_PATH . '/single-author-' . $curauth->ID . '.php'))
return SINGLE_PATH . '/single-author-' . $curauth->ID . '.php';
}
Apoi, ar trebui să vă conectați la site-ul dvs. folosind FTP sau managerul de fișiere cPanel în cPanel și apoi să accesați /wp-content/themes/your-theme-folder/. Dacă nu ați creat deja un folder numit /single/ în interior, atunci creați-l acum.
În interiorul acestui folder, trebuie să creați un șablon folosind numele de utilizator al autorului în numele șablonului. De exemplu, single-author-johnsmith.php.
Acest șablon va fi gol, astfel încât puteți copia și lipi conținutul șablonului single.php al temei dvs. și îl puteți folosi ca punct de plecare.
Acum poți vizita site-ul tău pentru a vedea o postare creată de un anumit autor. Aceasta va folosi șablonul pe care l-ai creat.
Sperăm că acest articol v-a ajutat să învățați cum să creați șabloane personalizate pentru postări unice în WordPress. De asemenea, ați putea dori să învățați cum să urmăriți vizitatorii site-ului pe site-ul dvs. WordPress, sau să vedeți lista noastră de pluginuri WordPress obligatorii pentru a vă dezvolta site-ul.
Dacă ți-a plăcut acest articol, te rugăm să te abonezi la canalul nostru de YouTube pentru tutoriale video WordPress. Ne poți găsi, de asemenea, pe Twitter și Facebook.


Richard Watts
Nu văd opțiunea „Adăugați la blocuri reutilizabile” în exemplul Crearea șabloanelor pentru postări individuale folosind editorul de blocuri
Folosind tema activă
Suport WPBeginner
Depending on the specific block you may see the option to add it to patterns instead which is likely what you are running into
Admin
allah ditta
vreau să creez un șablon de postare ca wpbeginner, este posibil?
Suport WPBeginner
Dacă există o parte din designul nostru care îți place, ai putea să o recreezi pe site-ul tău.
Admin
Jasmine
Primesc acest mesaj când încerc să folosesc codul:
Avertisment: call_user_func_array() așteaptă ca parametrul 1 să fie un apelabil valid, funcția 'my_single_template' nu a fost găsită sau numele funcției este invalid.
Aveți vreo idee de ce?
Suport WPBeginner
Ar trebui să vă asigurați că ați copiat corect întregul cod, avem un ghid care vă poate ajuta mai jos:
https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Admin
Iulian
Totul bine, dar strică fișierul single.php implicit.
Cu alte cuvinte, acest „Pe de altă parte, dacă ați clasificat o postare într-o categorie și nu ați creat un șablon pentru acea categorie, atunci WordPress va reveni la șablonul implicit single.php al temei dvs.” nu funcționează.
Vreun soluție?
Suport WPBeginner
S-ar putea să fie necesar să contactați suportul temei dvs. pentru a vă asigura că nu există un șablon diferit cu care vă confruntați. Pentru a înțelege ce vrem să spunem, poate doriți să consultați articolul nostru de mai jos:
https://www.wpbeginner.com/wp-themes/wordpress-template-hierarchy-explained/
Admin
Thomas
Salut, încerc să urmez pasul:
Deschide fișierul single.php și apoi copiază totul după linia get_header().
Sub:
Crearea manuală a șabloanelor personalizate pentru postări unice în WordPress
Cu toate acestea, nu am nicio funcție „get_header()” în acel fișier.
Suport WPBeginner
Tema dvs. specifică ar putea avea o codificare unică, am recomanda să contactați suportul pentru tema dvs. specifică și aceștia ar trebui să vă poată ajuta.
Admin
bob
Mulțumesc pentru asta. Toate fișierele mele generate automat (autor, nu am găsit etc.) folosesc șablonul site-ului meu, apoi pun o secțiune albă cu text alb pe pagină. Începe și de sus pe pagină (deci este text alb pe un fundal alb, în mare parte ascuns în spatele unui antet de pagină).
Cred că articolul dvs. mă va ajuta să rezolv această încurcătură.
Mulțumesc
Suport WPBeginner
Our article should help and if you reach out to your theme’s support they may be able to assist as well
Admin
Jojo
Nu pot găsi opțiunea de șablon în Beaver Builder.
Suport WPBeginner
Șabloanele ar trebui să se găsească în continuare în secțiunea din dreapta sus a panoului de conținut
Admin
John
Am înțeles corect că, odată ce creați un fișier php pentru un șablon de postare personalizat, pentru ca acesta să funcționeze ca un șablon, trebuie să codificați fișierul php, deoarece nu există nicio modalitate de a salva o nouă postare ca șablon. Este corect?
Mulțumesc pentru ajutor.
Suport WPBeginner
Este corect, pentru a schimba șablonul, dacă nu folosiți un constructor de pagini, nu există o metodă de a-l configura fără codare.
Admin
Ali Jahani
Salut
wpbeginner este foarteeeeeeeee bun
mulțumesc pentru publicarea celui mai bun articol
Suport WPBeginner
Glad you like our content
Admin
Gregory
Acesta este un tutorial grozav despre pagina de postări personalizate WP.
Mulțumesc pentru ajutor.
Suport WPBeginner
You’re welcome, glad you found our tutorial helpful
Admin
Haripal Reddy
Salutare Autor,
Am urmat pașii așa cum ați menționat. Am CPT-uri (tipuri de postări personalizate) numite albume. Am copiat fișierul single-albums.php în alt fișier numit wpb-single-albums.php și am adăugat codul de șablon precum /*
* Nume șablon: șablon personalizat
* Tip postare șablon: albume
*/
și am făcut câteva modificări necesare. Dar după selectarea acestui șablon în editarea postării, acesta afișează pagina implicită (single-albums.php).
Cum pot remedia asta, vă rog ajutați-mă
Suport WPBeginner
S-ar putea să vrei să verifici șablonul de lucru curent pentru a te asigura că ai tipul de postare corect
Admin
Alice
Mulțumesc pentru postarea dvs. excelentă. Am 2 întrebări: Șabloanele pentru postări individuale sunt la fel cu șabloanele pentru tipuri de postări personalizate? Dacă sunt diferite, îmi puteți arăta cum să creez un șablon pentru tipuri de postări personalizate?
Suport WPBeginner
Pot fi diferite dacă doriți, dar dacă creați unul specific pentru tipul de postare, altfel WordPress va folosi șablonul de postare implicit. Ar trebui să consultați articolul nostru aici: https://www.wpbeginner.com/wp-themes/wordpress-template-hierarchy-explained/
Admin
aziz
salut
îți mulțumesc pentru postare
Am făcut totul și a funcționat așa cum am vrut.
dar am avut o mică problemă
după adăugarea codului în function.php, single.php a încetat să mai afișeze date
există ceva ce pot face?
Suport WPBeginner
You would need to create the folder as we explain after the code in the article
Admin
Binesh
Salut, Mulțumesc pentru tutorialul tău…
Conform tutorialului dvs. am creat un tip de postare personalizat. Dar acum mă confrunt cu o problemă legată de comentarii. La trimiterea comentariului, este redirecționat către căutare...
Vă rog sugerați o soluție pentru asta..
Mulțumesc anticipat
Suport WPBeginner
Dacă vă redirecționează către o pagină 404, ar trebui să consultați articolul nostru de depanare aici: https://www.wpbeginner.com/wp-tutorials/how-to-fix-wordpress-posts-returning-404-error/
Admin
Mike
Bună.
I’m using this & enjoying it greatly!
However, I’m finding the following warning in my error logs around this code:
[warn] mod_fcgid: stderr: PHP Warning: Use of undefined constant SINGLE_PATH – assumed ‘SINGLE_PATH’ (this will throw an Error in a future version of PHP)
Ai vreo idee cum să rezolv asta?
Snippet-ul dvs. începe cu „define(SINGLE_PATH,…” așa că nu sunt sigur ce altceva să fac aici.
Suport WPBeginner
That error is saying it wants SINGLE_PATH to be surrounded by single quotes (”) which you can do for that warning
Admin
Jojo
Deci am urmat pașii dvs. și funcționează pentru noua pagină single cu slug de categorie, dar nu și pentru single.php implicit.
Cum pot face să funcționeze asta? Poate că calea implicită single.php este greșită?
Mulțumesc!
Suport WPBeginner
Dacă doriți să editați fișierul implicit single.php, atunci mai întâi ar trebui să creați o temă copil: https://www.wpbeginner.com/wp-themes/how-to-create-a-wordpress-child-theme-video/
și apoi puteți edita fișierul single.php fără să vă faceți griji că modificările vor fi eliminate atunci când creați propriul fișier single.php.
Admin
Jagdish
Sunt unul dintre cititorii tăcuți ai tăi, îmi place foarte mult blogul tău <3
Suport WPBeginner
Thank you, glad you’ve been enjoying our content
Admin
Hil
Salut,
Mă gândesc prea mult la asta, dar... dacă vreau ca fiecare postare de blog să arate la fel, creez doar Layout-ul (folosesc tema Divi), folosesc prima metodă de mai sus (fac o nouă versiune a single.php numită corespunzător) și aleg asta de fiecare dată când vreau să creez o postare? Atât de simplu?
De asemenea, pentru a adăuga CSS-ul personalizat, îl adăugați în fișierul php și cum? Unde în el îl adăugați? Cum ar trebui să arate? Aceasta este partea despre care nu am găsit încă nicio referință despre cum să o fac. Puteți face un exemplu bazat pe faptul că fiecare postare de blog arată la fel?
Mulțumesc
Suport WPBeginner
Postările de blog ar trebui să folosească în mod implicit fișierul single.php și să arate la fel, dar puteți crea un șablon personalizat pentru postări dacă doriți să modificați aspectul. Pentru CSS personalizat, ar trebui să consultați articolul nostru de aici: https://www.wpbeginner.com/plugins/how-to-easily-add-custom-css-to-your-wordpress-site/
Admin
Malgorzata
Salut, mulțumesc pentru tutoriale grozave. Funcționează uimitor, dar nu pentru categorii noi, care nu au un șablon special. Din păcate, nu preia codul din fișierul implicit single.php. Aș aprecia ajutor pentru a face să funcționeze.
Christopher Krohn
Tutorial fantastic. Mulțumesc!
STEVE
Salut, Mulțumesc pentru tutorial!
Am o întrebare. Cum am aplica CSS personalizat care ar afecta doar paginile Postărilor?
Mulțumesc
TRAVIS
Ce se întâmplă dacă doriți ca noul dvs. șablon să fie implicit pentru tot. Astfel încât, de fiecare dată când este creată o postare, aceasta să fie selectată automat ca șablon implicit?
Jarrod
Pur și simplu puneți codul pentru șablonul pe care doriți să îl creați în single.php.
Jae
Pariez că există plugin-uri pe care le puteți folosi pentru a face treaba fără bătaia de cap a codării și a temelor copil. Ar fi fost grozav dacă ați fi cercetat și ați fi împărtășit și asta în această postare.
Mahbub
@JAY de ce nu ai făcut asta singur?
peyman
Folosesc metoda dvs., dar nu pot seta CSS personalizat pentru aceste postări.
de exemplu, în function.php, când verific is_page_template(‘single-cat-news’), afirmația nu este adevărată și CSS-ul meu personalizat pentru acest tip de postare nu rulează. Ce ar trebui să fac în acest caz?
Bikram
Adevărat.
Și eu am această problemă. Șablonul pe toată lățimea funcționează bine pentru postări și pagini, dar când vine vorba de tipuri de postări personalizate, codurile CSS nu funcționează și revin la dimensiunea normală a paginii, fără o bară laterală.
Îmi este greu să găsesc o soluție la această problemă.
Mike
Am nevoie de ajutor suplimentar cu asta…
Urmând instrucțiunile de pe această pagină (împreună cu mici modificări notate în comentariile mele din 12/2/17 și 12/12/17), am reușit să fac acest lucru să funcționeze în mod fiabil.
CU TOATE ACESTEA, am întâmpinat problema în care utilizarea acestei metode pentru a apela un șablon personalizat nu pare să fie înregistrată cu apelul claselor body_class.
De exemplu, dacă setez un șablon personalizat pe o pagină (unde folosesc meniul derulant „Șablon” al WordPress din bara laterală „Atribute pagină” în vizualizarea de editare – atunci body_classes care sunt afișate ar include numele acelui șablon.
De exemplu:
<body class="page-template-my_custom_template page page-id-2..."Dar, folosind această metodă, clasele body returnează doar:
<body class="page-template-default page page-id-2..."Aveți vreo idee despre cum să vă asigurați că clasele corpului reflectă un șablon personalizat pentru postări unice?
Mike
Iată răspunsul (cel puțin pentru tema mea – experiența ta poate varia).
Adăugarea următoarelor la [b]functions.php[/b] a rezolvat problema pentru mine:
add_filter('body_class','add_category_to_single'); function add_category_to_single($classes) { if (is_single() ) { global $post; foreach((get_the_category($post->ID)) as $category) { // add category slug to the $classes array, starting with 'category-'... $classes[] = "category-$category->category_nicename"; } } // return the $classes array return $classes; }Dzungx Corn
Am creat un fișier single-cat-news.php pentru „Știri”. Categoria mea „Știri” are doi copii: „Cameră” și „Smartphone”. Postarea din „Smartphone” se afișează în single-cat-news.php (S după N în alfabet), dar postarea din „Cameră” se afișează în șablonul implicit single.php (C înainte de N în alfabet). Vreau ca postarea din „Cameră” să se afișeze în single-cat-news.php, ce trebuie să fac? Am selectat atât „Știri”, cât și „Cameră” pentru postarea mea.
Sarmad Gardezi
Im viewing your Blog from last 2 years. I explored whole web to find this but i got the correct working code from here i just love your Blog keep it up
Mike
Când am folosit această abordare pentru a specifica un șablon de postare personalizat pentru o postare unică dintr-o anumită categorie, am constatat că WordPress NU revenea la single.php în cazurile în care nu exista un fișier single-cat-WHATEVER.php pentru o anumită categorie.
Am remediat acest lucru adăugând următoarea linie înainte de sfârșitul funcției:
altfelreturn SINGLE_PATH . '/single.php';
Astfel, acest cod:
/**
* Verifică șablonul unic pe categorii
* Verifică după slug și ID-ul categoriei
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php')) return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
endforeach; }
A devenit asta:
/**
* Verifică șablonul unic pe categorii
* Verifică după slug și ID-ul categoriei
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php')) return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
altfel
return SINGLE_PATH . '/single.php';
endforeach; }
Pare aceasta abordarea corectă? Sau, există altceva ce aș fi putut face pentru a strica funcționalitatea implicită?
Mike
Mulțumesc pentru acest ghid clar.
O notă: pentru noi cei care folosim un THEME COPIL, am descoperit că schimbarea...
define(SINGLE_PATH, TEMPLATEPATH . ‘/single’);
către:
define(SINGLE_PATH, get_stylesheet_directory() . ‘/single’);
(în secțiunea „Define a constant path to our single template folder”) asigură că directorul temei copil este verificat pentru șabloanele single în locul directorului temei părinte.
Acesta ar putea fi și motivul pentru care nu funcționează pentru unii dintre ceilalți comentatori de mai sus.
Mult succes tuturor!
Stephanie Lewis
Vă mulțumesc mult pentru ajutor! Mă întrebam de ce continua să mă trimită la tema părinte în loc de tema copil.
Ashley
Nu reușesc să fac să funcționeze pentru mine, șablonul nu apare niciodată în editorul de postări, chiar și după ce mi-am golit memoria cache.
Olayinka
Mulțumesc pentru acest articol.
Aș dori să știu cum pot personaliza mai mult aspectul acestui șablon de postare personalizată, cum ar fi plasarea unei imagini în postare înainte de conținut și în subsol.
oussama
Salut,
Am nevoie să schimb ordinea a 3 elemente în pagina de postare, care se află în partea de jos a articolului:
1- un plugin de paginare.
2- o reclamă.
3- pictograme de partajare socială.
Vreau să le fac în următoarea ordine (vertical):
1-reclama
2-pictogramele de partajare socială
3-pluginul de paginare
Cum pot face asta, vă rog?
Linda Holiner
Vă mulțumesc pentru tutorialele dumneavoastră excelente. Am probleme cu acesta. Am adăugat codul în functions.php, dar nu obțin șablonul de postare unică. Trebuie să fac un apel la funcție sau WordPress face asta? Există vreo modalitate de a depana funcția?
Vreau doar ca postările dintr-o anumită categorie să fie afișate diferit atunci când faci clic pe ele.
Taufiq Mahmud
Am vrut să creez o pagină de postare personalizată unde utilizatorii înregistrați ai site-ului meu pot posta fără a folosi fișierul implicit post.php al WordPress.
Pierrick
Salut! Mulțumesc pentru acest tutorial, dar sunt destul de nou în web design și am început să creez o temă WordPress completă. Totul funcționează bine pe site-ul meu, dar încerc să fac posibilă adăugarea de pagini care să folosească toate un șablon pe care l-am creat (cum ar fi pagina unui produs dintr-un catalog), dar nu am nicio idee cum să fac asta. Inițial am încercat să fac acest lucru creând un șablon de pagină în care am pus bucle care afișează conținutul unui articol sau al unei pagini, cum ar fi titlul, textul și valorile unor câmpuri personalizate. Pentru a face acest lucru am folosit un query_posts, dar acesta necesită introducerea ID-ului postării sau al paginii cu „page_id=” sau „p=”, ceea ce înseamnă că șablonul este pentru o singură pagină specifică, și ar trebui să creez un șablon pentru fiecare pagină nouă pe care o adaug în acest catalog, și să specific manual ID-ul paginii/postării în el, în timp ce ceea ce îmi doream era să creez un singur șablon pentru toate paginile catalogului…
Așadar, în timp ce făceam cercetări pentru a găsi o soluție, am găsit articolul dvs. și am încercat să creez o postare folosind noul șablon de postare unică, dar indiferent de șablonul pe care îl selectez din listă, când accesez URL-ul postării, se afișează pagina mea de pornire… Probabil fac totul greșit și nici măcar nu sunt sigur dacă am înțeles ce este o postare unică și dacă este cu adevărat ceea ce am nevoie… Aș aprecia foarte mult dacă mi-ați putea oferi câteva indicii despre ce ar trebui să fac pentru a rezolva problema mea, sau dacă există vreun tutorial undeva care m-ar putea ajuta…
Mulțumesc,
Pierrick.
Suport WPBeginner
Salut Pierrick,
Nu suntem siguri că înțelegem complet problema dvs. Cu toate acestea, dacă doriți doar să creați un șablon care să fie utilizat de orice pagină, atunci șablonul de pagină personalizat este abordarea corectă. Deoarece doriți ca utilizatorii să poată vedea orice pagină, acest lucru înseamnă că nu trebuie să utilizați query_posts, bucla dvs. va începe cu standardul
1-click Use in WordPress
Admin
alex
Salut,
Am o configurație locală cu WP 3.7.x și Tipul de postare șablon: post, pagină, produs nu este disponibil.
Cum pot crea fișiere php separate pentru categorii pentru fiecare categorie de postări???
single-{slug}.php
category-{slug}.php
deloc nu pare să funcționeze
Aveți sfaturi?
Mark
Am configurat acest lucru să funcționeze cu categorii, însă atunci când selectez o postare care nu are o categorie, aceasta nu preia șablonul implicit și nu afișează postarea. Suspectez că tema mea ar putea fi de vină. Cum aș putea codifica hard șablonul single.php din directorul părinte ca implicit, dacă nu există un șablon de categorie?
Funcționează perfect dacă copiez single.php în fișierul /single/single-cat-name.php, dar nu vreau peste 40 de fișiere duplicate.
Eric Besso
mai întâi copiați single.php în folderul /single
apoi includeți acest cod chiar înainte de sfârșitul foreach;
else
return SINGLE_PATH . ‘/single.php’;
Garikai Dzoma
Acest lucru mi-a fost de mare ajutor.
Lyssie
Acesta este exact ceea ce căutam, vă mulțumesc că ați explicat acest lucru atât de simplu! Totuși, îmi rămâne o întrebare: am eliminat bara laterală, dar acum există doar un spațiu gol unde era înainte. Cum pot extinde secțiunea de conținut principal pentru a acoperi întregul spațiu? Mulțumesc din nou!
Suport WPBeginner
Salut Lyssie,
Asta pentru că tema dvs. a definit lățimea zonei de conținut în raport cu bara laterală. Trebuie să folosiți instrumentul de inspecție pentru a afla ce clasă CSS folosește zona dvs. de conținut și apoi să ajustați adăugând CSS personalizat pentru a o face pe lățime completă.
.page-template-full-width .content-area { width: 100%; margin: 0px; border: 0px; padding: 0px; } .page-template-full-width .site { margin:0px; }1-click Use in WordPress
Vedeți ghidul nostru despre cum să creați o pagină pe lățime completă în WordPress
Admin
Lyssie
Mulțumesc pentru răspunsul rapid! A fost de mare ajutor! Acum, dacă văd:
div id=”primary” class=”content-area”>
când folosesc instrumentul de inspecție, care este clasa pe care o folosește zona mea de conținut?
Lyssie
Oops, asta nu a ieșit bine.
div id=”primary” class=”content-area”
main id=”main” class=”site-main” role=”main”
id articol=”post-4773″ clasa=”post-4773 post type-post status-draft format-standard hentry category-travel-2″
div id=”featured-image”
/div
Suport WPBeginner
Salut Lyssie,
Tema dvs. folosește clasa content-area pentru a defini lățimea blocului de conținut. Ar trebui să îi puteți vedea lățimea atunci când folosiți instrumentul de inspectare.
Joe Yee
Acesta este un articol excelent și ar trebui să ajute o persoană non-programator ca mine. Personalizarea șablonului ar fi ceva înfricoșător, de teamă să nu stric tema în totalitate. Recomandați să fac șablonul personalizat într-o temă copil sau este în regulă să o fac direct în tema principală. Mulțumesc mult.
Suport WPBeginner
Salut Joe,
Nu veți modifica niciunul dintre fișierele existente ale temei dumneavoastră. În schimb, veți crea un fișier nou. Dacă ceva nu merge bine, puteți pur și simplu șterge șablonul și site-ul dumneavoastră va reveni la normal.
Da, crearea unei teme copil este cea mai bună practică recomandată.
Admin
Danielle
Când pun fișierul în tema mea copil, îl văd în caseta derulantă, dar de fapt nu se aplică.