Cum ai aranjat afișarea postărilor pe pagina principală și în categoriile WordPress? Cum să excludeți postări și categorii de pe pagina de pornire WordPress, feed rss, categorii și arhive fără pluginuri

Acest articol va fi o continuare a subiectului despre pregătirea unui site WordPress pentru promovare în motoarele de căutare. Am descris deja cum să faci text static (permanent) pe secțiunile promovate. Astăzi vă voi arăta cum să faceți un lucru similar, dar numai de data aceasta pentru pagina principală a site-ului, care, după cum știți, are cea mai mare greutate. Tot ce trebuie să faci este să scrii un text care să te ajute la promovare.

Dacă ați venit de la Google sau Yandex și ați ratat articolul anterior, atunci consultați...

Există mai multe moduri de a crea text static pe pagina principală a unui site WordPress:

  • folosind funcția WordPress încorporată (citește articolul). După cum puteți vedea, este o chestiune de două secunde.
  • a doua metodă presupune plasarea unui anumit cod în fișierul index.php sau home.php (numele depinde de șablonul site-ului tău)
  • pur și simplu selectând pagina dorită în Setări din panoul de administrare (captura de ecran de mai jos)
  • prin crearea unui șablon separat pentru tema principală în fișierele temei (veți avea nevoie de cunoștințe PHP/CSS sau de ajutorul unui specialist).

Dacă ați ales prima metodă, atunci nu uitați să închideți postarea selectată pentru indexare, astfel încât să nu existe conținut duplicat. Puteți face asta cu robots.txt.

Dacă alegeți a doua metodă, atunci pentru a face acest lucru, trebuie să deschideți fișierul index.php (home.php) și să introduceți următoarele înaintea funcției de afișare a tuturor postărilor:

text sau cod arbitrar

Acest cod vă permite să afișați informații doar pe pagina principală. Tot ce trebuie să faci este să-l așezi înăuntru blocul necesar cu text sau cod necesar.

Același cod poate fi folosit în widget-uri dacă trebuie să afișați ceva doar pe pagina principală a site-ului. Excelent pentru așa ceva pluginul va face.

Dacă nu înțelegeți de ce ar trebui să introduceți codul pe care l-am sugerat mai sus, atunci iată un mic indiciu: în șablonul meu pentru afișarea informațiilor despre Pagina de start Fișierul index.php răspunde. Conține acest cod:

>

< div id = "post- " >

Continuă, dar nu mai contează. Această parte a codului spune că, din acest moment, intrările noastre în continuă schimbare încep să apară pe pagina principală a site-ului. De aceea trebuie să inserăm cod în fața acestuia pentru a afișa static textul pe pagina principală, despre care vorbim astăzi.

Bună ziua, dragi cititori ai blogului. Probabil ați observat asta pe diferite bloguri paginile de start pot arăta diferit.

Nu vorbesc despre crearea unei pagini de start statice (deși voi menționa asta, pentru că cineva ar putea fi interesat), dar vreau să mă concentrez pe afișarea anunțurilor de articole noi (inclusiv în categorii sau arhive de etichete).

Pe pagina principală (și în secțiuni) a unui blog WordPress pot fi afișate postări întregi sau părțile lor introductive înainte de eticheta Mai multe sau anunțuri foarte scurte cu o miniatură a postării sau chiar fără o miniatură. În cele din urmă, este posibil să se folosească doar anteturi, sau o reproiectare completă a standardelor adoptate în acest motor.

Nu voi vorbi despre opțiunea de redesenare completă, ci despre caracteristici standard pe care acesta ne-o oferă, voi încerca să vă spun în fiecare detaliu. În principiu, a trebuit deja să scriu despre multe din ceea ce urmează să spun, dar totul a fost în publicații separate, așa că acum eu însumi cu greu îmi amintesc unde exact și ce se află (îl folosesc în acest scop). Sper sa fie interesant.

Vedere implicită a paginii de pornire și a categoriilor în WordPress

După cum probabil știți, dacă nu faceți nicio mișcare specială când scrieți o postare în WordPress, cel mai probabil va fi complet afișată pe pagina principală, iar imediat dedesubt va fi postarea anterioară pe care ați publicat-o mai devreme. De ce am spus „cel mai probabil”? Pentru că afișarea postărilor pe pagina principală depinde în mare măsură de și pot fi diferite, inclusiv cele destul de exotice.

Dar, în cea mai mare parte, pentru a afișa postări pe pagina principală în fișierul index.php (acesta este fișierul șablon care este folosit pentru a crea aspectul paginii principale în WordPress - vezi articolul de la linkul de mai sus despre teme) a constructie ca:

Datorită acesteia, articolele întregi vor fi afișate pe pagina principală, cu excepția cazului în care îl folosiți pe cel minunat, căruia i-am dedicat odată un articol întreg. Când vizualizați versiunea completă a articolului, nu îi afectează în niciun fel aspectul, dar pe pagina principală nu va fi afișată întreaga postare, ci doar acea parte a acesteia care se află deasupra etichetei Mai multe și în loc de eticheta în sine, va fi afișată o inscripție precum „Citește în întregime”.

Personal, scriu articole fără a folosi un editor vizual, iar această etichetă, inserată în textul articolului (între paragrafe), arată astfel:

Cu toate acestea, puteți să vă jucați și să scrieți, de exemplu, astfel:

Cred că esența este clară - creăm un link către articolul din pagina principală nu doar cu „Citește mai mult” (la fel pentru toate articolele), ci adăugăm la acesta cuvintele cheie prin care vrei să ajungi în Top a motoarelor de căutare. Nu voi spune că această metodă este 100% benefică, dar unii bloggeri (inclusiv eu de ceva timp) o folosesc.

înainte de a-l împărți în pagini, este setat în setări. Pentru a face acest lucru, va trebui să accesați el, selectați „Setări” - „Citire” din meniul din stânga și puneți numărul necesar de materiale (postări) în câmpul „Afișați nu mai mult decât pe paginile blogului”.

Ce dezavantaje pot fi remarcate cu acest tip de afișare a materialelor pe pagina principală a WordPress? În general, există mai multe dintre ele:

  1. Dacă afișați postări întregi pe pagina principală (fără eticheta Mai multe), atunci în ochii motoarelor de căutare veți vedea duplicarea conținutului de pe site-ul dvs., ceea ce poate duce la o scădere a traficului către blogul dvs. de la Yandex și Google. Nu este un fapt că acest lucru se va întâmpla, dar probabilitatea unei deteriorări a clasamentului va fi foarte mare. Aproximativ vorbind, motoarele de căutare vor fi jignite de dvs. pentru că ați introdus același lucru în indexul lor pe diferite pagini ale site-ului, ceea ce le înfunda serverele și duce la costuri suplimentare.
  2. Din nou, fără a utiliza eticheta More, cel mai probabil va trebui să limitați serios numărul de postări care apar pe pagina principală, astfel încât să nu arate ca o foaie nesfârșită și greu de utilizat. Și chiar și în acest caz, gradul de utilizare al blogului tău nu va fi încă foarte mare.
  3. Chiar dacă utilizați eticheta Mai multe, dar puneți un fragment foarte mare al postării pe pagina principală, atunci motoarele de căutare pot vedea din nou, dacă nu completă, dar dublarea parțială a conținutului. Este clar că acest lucru nu va avea un impact global, dar întreaga lume a SEO este construită pe sute de lucruri mărunte care împreună determină succesul sau eșecul proiectului tău. Prin urmare, este mai bine să vă obișnuiți imediat să faceți totul „cum ar trebui”, și nu „o va face”.
  4. Situația cu duplicarea conținutului în cadrul site-ului poate deveni și mai gravă dacă afișați versiuni complete ale postărilor sau bucăți mari din ele atât în ​​categorii, cât și în arhive de etichete (precum și în arhive temporare). Această problemă poate fi parțial rezolvată prin blocarea, de exemplu, a arhivelor temporare și etichetate de la indexarea de către motoarele de căutare folosind un plugin (articolul de mai jos descrie cum se poate face acest lucru), dar este mai bine să nu faceți acest lucru.

Există o modalitate de a rezolva problema conținutului duplicat atunci când utilizați funcția_content. Aceasta este o etichetă specială NOTEASER. Ce face? Când îl utilizați, pe pagina principală va fi afișată doar acea parte a articolului care se află deasupra etichetei Mai multe, iar pe pagina postării propriu-zise anunțul nu va fi afișat deloc (doar textul imediat care urmează MORE). Designul va arăta astfel:

Astfel, parcă creșteți unicitatea textelor de pe blogul dvs. (scăpați de duplicarea parțială). Dar există o nuanță care depășește toate avantajele utilizării NOTEASER. Când accesează o pagină de postare nu din pagina principală sau secțiunea blogului tău, ci dintr-un motor de căutare sau printr-un link direct, utilizatorul nu va vedea deloc partea introductivă, ceea ce îi poate provoca nedumerire și confuzie.

Afișarea postărilor în categorii - the_excerpt în loc de the_content

Apropo, în categorii și arhive de etichete Aceeași metodă de afișare este adesea folosită. Aceste. Sunt afișate fie versiunile complete ale postărilor (în ordinea descrescătoare a datei creării lor), fie fragmentele tăiate cu eticheta Mai multe.

Aceste. folosit în șablonul de categorie (de obicei acesta este fișierul șablon archive.php din folderul cu tema pe care o utilizați) aceeași funcție ca și pentru afișarea postărilor pe pagina principală:

Puteți vedea un exemplu de astfel de rezultate de postări în categorii pe blogul lui Mikhail Shakin. Desigur, inițial toate acestea depind de tema pe care o utilizați. Dar totul este în puterea ta. Va fi suficient și afișarea postărilor pe categorii va deveni semnificativ mai utilizabilă, în timp ce gradul de duplicare a conținutului de pe blogul tău va scădea semnificativ.

Mai mult, realizarea acestei setari este foarte simplă - doar înlocuiți codul funcției din fișierul archive.php the_content() to the_excerpt():

În acest caz, din postare vor rămâne doar titlul și un număr mic din primele cuvinte din articol (fără formatare și cu eliminarea imaginilor existente, a hyperlinkurilor și a altor markupuri). Voi face imediat o rezervă că numărul de cuvinte (sau caractere) din titlu, precum și numărul primelor cuvinte afișate în postare, pot fi limitate folosind (voi explica exact cum mai jos).

Cum să faci anunțurile postate în categoriile WordPress unice?

Cu toate acestea, conținutul anunțului postat atunci când se utilizează funcția the_excerpt() poate fi înlocuit cu conținutul câmpului "Citat", dacă ați completat-o ​​când ați scris articolul (de obicei, se află imediat sub fereastra de introducere a textului). Apropo, această opțiune reduce și duplicarea conținutului, dar nu o exersez din cauza faptului că „nu exersez”. In general, banala lenea mama.

Dacă nu vedeți zona numită „Citat” sub fereastra de introducere a textului din panoul de administrare WordPress, atunci ștergeți site-ul și reinstalați din nou motorul, apoi rescrieți toate articolele și începeți să le promovați. Ei bine, serios, în partea de sus a panoului de administrare din partea dreaptă veți găsi o „filă” numită „Setări ecran”. Făcând clic pe el, puteți activa cu ușurință panoul de care aveți nevoie (sau eliminați unul care nu este necesar), pur și simplu bifând sau eliminând caseta de selectare dorită.

Personalizăm aspectul postărilor în categorii atunci când le afișăm folosind the_excerpt

Deci, dacă nu completați câmpul Citat pentru fiecare postare, atunci utilizarea the_excerpt() sub titlu va fi implicit. Nu ești mulțumit de asta? După cum am menționat mai sus, totul poate fi configurat folosind functions.php. Doar deschideți-l și adăugați câteva rânduri noi:

unde in loc de 30 poti pune numarul de cuvinte de care ai nevoie, afisat pe paginile categoriei WordPress sub titlurile articolelor.

Dacă titlurile articolelor dvs. sunt la fel de lungi ca ale mele, atunci categoriile sunt bune. Pentru a face acest lucru, în loc de the_excerpt(), inserați:

unde in loc de 7 poti pune numarul de cuvinte de care ai nevoie in titlul postarii, care va fi afisat in titlurile blogului tau. Dar pentru ca toate acestea să funcționeze, va trebui să adăugați următoarea funcție în fișierul functions.php:

Funcția do_excerpt($șir, $limită_cuvinte) ( $cuvinte = explode(" ", $șir, ($limită_cuvinte + 1)); if (număr($cuvinte) > $limită_cuvinte) array_pop($cuvinte); echo implode(" ", $cuvinte)";

În loc de punctele suspensive din ultima linie, puteți pune altceva, dar cel mai probabil este mai bine să o lăsați așa.

Cum să afișați numai titlurile postărilor pe pagina principală sau în categoriile WordPress?

Ei bine, totul este destul de simplu aici. Va fi suficient să eliminați archive.php din fișierul șablon (responsabil cu crearea arhivelor (categorii, etichete etc.), dar poate să nu fie în tema dvs.) sau index.php (responsabil cu crearea paginii principale de blog, dar adesea și toate celelalte folosind operatori condiționali) the_excerpt sau the_content (în funcție de ce anume este folosit).

De exemplu, următoarea construcție este responsabilă pentru afișarea postărilor în categorii:

" rel="marcaj" title="!}">

Eliminarea din această postare:

Mă voi asigura că în categoriile mele vor fi afișate doar titlurile postărilor fără texte de anunț sau conținutul câmpului „Citat”. În unele cazuri, această opțiune poate fi destul de solicitată. În orice caz, în acest fel rezolvi complet problema duplicării, exprimată chiar mai sus în text.

Adăugarea de miniaturi la postările de pe pagina principală și din categorii

Când utilizați the_excerpt, postarea nu arată foarte atractivă, deoarece toate formatările, linkurile și imaginile sunt eliminate din ea. În secțiuni, acest lucru poate fi supraviețuit cel puțin, dar pe pagina principală va fi necesar să revigorăm cumva această chestiune. Miniaturile, care au fost un element de bază în WordPress de ceva timp, sunt perfecte pentru asta.

Dacă nu aveți miniaturi create pentru toate postările dvs., este în regulă. La un moment dat nici eu nu le aveam, pentru că am început să scriu pe blog chiar înainte să apară în WordPress. Cu toate acestea, există un minunat plugin Auto Post Thumbnail pentru a le crea automat pe baza primei imagini din postare (am fost destul de mulțumit de această opțiune). După instalare, mergeți la setările acestuia și faceți clic pe butonul pentru a crea imagini miniaturale de diferite dimensiuni, care se vor baza pe prima imagine a postării.

Așteptați o jumătate de oră și miniaturile pentru toate articolele de blog vor fi create automat. Lepota. Ei bine, atunci tocmai am început să adaug o miniatură înainte de a publica fiecare articol (ar trebui să existe o zonă corespunzătoare în coloana din dreapta a panoului de administrare):

Dacă din anumite motive această zonă „Post Thumbnail” nu este afișată în panoul de administrare atunci când lucrați cu o postare, atunci, așa cum am spus mai sus, demolați blogul și începeți totul de la capăt. Adevărat, am luat o cale diferită - am adăugat câteva linii noi în partea de jos la minunatul fișier functions.php (din folderul cu tema pe care o utilizați):

Și totul a funcționat. Deci, dacă nu aveți probleme cu miniaturile, atunci puteți încerca să înlocuiți afișarea obișnuită a postărilor pe pagina principală sau în categoriile WordPress folosind the_excerpt cu acest design, adăugarea unei miniaturi la postare:

În mod implicit, miniatura va fi îndreptată spre marginea stângă și textul se va înfășura în jurul ei. Numai că am adăugat mici miniaturi în fișierul meu de stil style.css, astfel încât totul să fie mai bine perceput. Pentru a face acest lucru, a fost suficient să adăugați o singură linie:

Wp-post-imagine (completare: 3px 15px 5px 5px;)

Totuși, pe pagina principală am lăsat în continuare ieșirea postărilor folosind the_content și eticheta Mai multe, iar în categorii folosesc în continuare „naked” the_excerpt. Dar totuși, am implementat metoda descrisă, dar nu pe pagina „”, ceea ce este destul de tipic pentru un blog.

Cred ca a iesit misto.

Cum se face pagina de pornire permanentă (statică) în WordPress?

De fapt, acum câțiva ani am făcut exact asta. Apoi, pe pagina mea principală (la adresa - https://site) a fost afișat un articol, care se află acum pe pagina de eroare 404 (vedeți cum să o configurați), pe care îl puteți vedea prin simpla adăugare a unui caracter de la tastatură la orice URL a site-ului meu (în bara de adrese, de exemplu, acesta este https://site/404).

De ce am abandonat pagina de pornire statică? Nu stiu. Din anumite motive. În general, la un moment dat am decis să mă întorc la clasici, deși nu existau condiții speciale pentru acest lucru. Totuși, permiteți-mi să explic cum este implementat totul. De fapt, trebuie să rezolvăm patru probleme:


Asta e tot. După aceea, uită-te la rezultat și, dacă este necesar, îmbunătățește conținutul paginii principale (statice) deja permanente a blogului tău.

Cum ai aranjat afișarea postărilor pe pagina principală și în secțiunile blogului tău pe WordPress?

Mult succes pentru tine! Ne vedem curând pe paginile site-ului blogului

Puteți viziona mai multe videoclipuri accesând
");">

S-ar putea să fiți interesat

De unde să descărcați WordPress - numai de pe site-ul oficial wordpress.org
Titluri ale articolelor H1, H2, H3 în WordPress, precum și metode de afișare a categoriilor (the_content, the_excerpt și altele)
Cum în WordPress puteți afișa postări dintr-o categorie cu miniaturi (creându-le în Auto Post Thumbnail și catch_that_image)
Setări de blog WordPress pe care ar trebui să le faci imediat după instalare Meniul din stânga a dispărut în administratorul WordPress după actualizare

Formatul standard de blog este conceput în așa fel încât mesajele (postările) sale să fie afișate unul după altul, cele mai noi fiind afișate primele, iar cele vechi trecând treptat în arhivă. Acesta a fost cazul chiar la început, dar pe măsură ce blogging-ul a evoluat, am putut vedea multe opțiuni diferite pentru șabloanele WordPress, care, de exemplu, afișează informații într-un format de ziar, iar așa-numitele articole prezentate sunt afișate în partea de sus. Sau, de exemplu, blogurile foto, care practic nu conțin informații textuale, doar fotografii și așa mai departe Oamenii au început să se abată treptat de la standarde. Și asta e grozav.

Unul dintre aceste lucruri care vă pot diversifica ușor blogul este afișarea unui text specific pe pagina principală a blogului. Adică, cititorul merge la proiectul site.ru și vede o mică descriere text despre ce este de fapt site-ul, ce poate fi găsit aici etc. Uneori, astfel de descrieri (introduceri) sunt plasate în bara laterală, alteori în antetul blogului. Puteți face acest lucru puțin diferit combinând două opțiuni:

  • pe pagina principală este afișat un bloc de text cu o introducere;
  • pe toate celelalte pagini, descrierea blogului este afișată în bara laterală, dar într-o formă redusă (mai compactă).

Un exemplu îl găsiți în blogul despre ceai. Nu am făcut încă toată munca de proiectare acolo, dar chiar astăzi mă gândeam cum să afișez textul pe pagina principală. Se pare că multe dintre postările de pe WordPress Inside se bazează pe experiența personală :)

Apropo, dacă trebuie doar să corectați designul paginii principale, atunci va fi suficient să o utilizați - va adăuga clasele corespunzătoare în corp și apoi veți aplica stiluri CSS.

Pentru a ne rezolva problema vom folosi operatori condiționali wordpress. Dar există o mică „discrepanță” aici pe care încă nu am reușit să o dăm seama, deși nu afectează rezultatul final. Trucul este că pentru a determina pagina principală a unui blog există 2 operatori simultan - is_home() și is_front_page(). Pe baza descrierii din cod, personal nu am putut înțelege pe deplin diferența dintre ei, unii termeni sunt la fel, așa că am găsit practic o opțiune de lucru.

este_acasă()– un operator condiționat care este TRUE sau FALSE și verifică dacă „pagina principală” pentru blog este afișată în prezent. S-a mai spus că în WordPress 2.1 funcția este procesată ușor diferit față de alte versiuni și, dacă este selectată o pagină statică ca pagină principală, atunci pot apărea probleme acolo.

is_front_page()– adaugat in versiunea 2.5, este de asemenea conditionat, ia valoarea TRUE sau FALSE in functie de daca este afisata in prezent pagina „prima” sau postarea. Adică, aparent functie universalași funcționează în ambele cazuri - când ați selectat „afișați cele mai recente postări pe pagina principală” în panoul de administrare sau „pagina statică” este selectată ca pagină principală.

Dacă sunt citit de guru WordPress care înțeleg toate complexitățile sistemului, atunci aș fi recunoscător pentru clarificare. Dar deocamdată pot spune asta Folosesc is_front_page() și nu am văzut nicio problemă. „Ultimele postări” sunt afișate pe pagina principală. Primim ceva de genul:

Există situații în bloguri când pagina principală nu se potrivește cu toate postările și paginarea apare în partea de jos. Ce important(!) Sistem WordPress când faceți clic pe ele nu schimbă starea paginii de la „acasă” la alta- rezultatul este o pagină principală care pur și simplu nu se potrivește dintr-o singură mișcare. Prin urmare, vom folosi un alt operator condiționat important:

is_paged()— reacționează (adevărat sau fals) la o situație în care toate postările din arhivă (pentru principal, categorie, etichete) nu se potrivesc pe o singură pagină și sunt împărțite în mai multe. Mai mult, trebuie remarcat faptul că acest lucru nu se aplică împărțirii unei postări separate în pagini folosind .

Total - afișați textul doar pe pagina principală

Pentru a afișa textul pe pagina principală și pentru a-l ascunde pe orice alte pagini, folosesc codul pe care îl adaug în fișierul șablon index.phpînainte de a prelua cele mai recente postări de blog have_posts():

Blogul meu

Bun venit pe noul meu blog

Acum pasul numărul 2 - vom afișa o scurtă descriere pentru blog în bara laterală - pentru aceasta deschidem fișierul sidebar.phpși adăugați liniile acolo unde avem nevoie de ele:

Despre proiect

Scurtă descriere

Despre proiect

Scurtă descriere

Aici vedem o altă declarație condiționată care poate fi utilă cuiva.

is_page('ID')– verifică afișarea paginii cu numărul specificat în ID. În exemplul meu, ascund o scurtă descriere a blogului în bara laterală a paginii cu id 2, pentru că am pregătit acolo un articol întreg „despre proiect”. Adică, nu are rost să afișați o scurtă descriere atunci când totul este spus direct în blocul de conținut.

Salut baieti!

Astăzi va exista un articol tehnic care vă va arăta cum să excludeți postările de pe pagina principală a unui site WordPress.

De asemenea, veți învăța cum să excludeți categorii întregi, nu doar anumite intrări. Vă voi arăta multe opțiuni, atât cu și fără pluginuri. În general, totul este ca întotdeauna.

În ce cazuri ar trebui folosit?

Necesitatea excluderii unor postări, adică a anunţurilor lor, de pe pagina principală există mai ales pe blogurile personale, când pe lângă articolele mari, de înaltă calitate pentru un public obişnuit, merită să umpleţi resursa cu articole simple optimizate SEO. .

Este puțin probabil ca astfel de articole să fie utile membrilor blogului, deoarece ei știu deja toate acestea. Pentru a nu împrăștia pagina principală cu anunțuri inutile, ar fi bine să nu le arăți. În același timp, acestea ar trebui adăugate pe site pentru a atrage noi audiențe către resursa din motoarele de căutare. De asemenea, trebuie afișate, dar acest lucru ar trebui făcut pe paginile secțiunilor și arhivelor, pentru ca noii veniți să le găsească folosind navigarea prin secțiunile site-ului.

De exemplu, nu veți găsi acest articol pe pagina principală a blogului meu pe niciuna dintre paginile lor de paginare (navigarea paginii). Totodată, anunțul articolului este vizibil în secțiunea „Util” și pe pagina de hartă a site-ului „Toate articolele”.

Fara plugin

Metoda fără plugin este întotdeauna de preferat, dar în acest caz nu va fi o prioritate, deoarece pentru a exclude un articol va trebui să faceți modificări fișierului șablon pe care l-ați instalat de fiecare dată. Dar totuși, voi arăta mai multe opțiuni diferite pentru implementarea unei astfel de soluții, deoarece este foarte posibil ca aceasta să vă convină.

Mai jos voi da diverse bucăți de cod care ar trebui plasate în fișierul șablon functions.php.

Excluzând înregistrările specifice după ID

În această opțiune, nu este nevoie să ascundeți categorii întregi de vizibilitate pe pagina principală, așa cum fac mulți cu ajutorul diferitelor plugin-uri. Tot ce trebuie să faceți este să adăugați ID-urile înregistrărilor necesare în cod.

funcția exclude_post($interogare) (dacă ($interogare->este_acasă) ($interogare->

if ($interogare -> is_home )

( $interogare -> // ID post

returnează $interogare ; )

În rândul 3, numerele 1 și 2 sunt înregistrări de identitate care nu vor apărea pe pagina de pornire. Trebuie să-l scrieți separat prin virgule.

Veți afla ID-ul postării, paginii și categoriei în bara de adrese a browserului atunci când vizualizați prin editor.

Următoarea opțiune vă va permite să excludeți intrări din fluxul RSS.

Excluderea din fluxul RSS

Acest cod vă va permite să excludeți anunțuri din fluxul de știri și să nu le trimiteți prin e-mail dacă utilizați serviciul de abonament și anunț folosind Feedburner.

funcția exclude_post($interogare) ( if ($interogare->is_feed) ($interogare->set("post__nu_în", array(1, 2));) // post (post) id return $interogare; ) add_filter(" pre_get_posts","exclude_post");

funcția exclude_post ($interogare) (

if ($query -> is_feed )

( $interogare -> set ( "post__not_in" , matrice ( 1 , 2 ) ) ; ) // ID post

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_post" );

Adăugarea înregistrărilor în acest caz și în toate celelalte se face în același mod.

Excluderea din categorii și arhive

Pentru a exclude postări din paginile categoriei, ar trebui să utilizați următorul cod.

funcția exclude_post($interogare) ( dacă ($interogare->este_categorie) ($interogare->set("post__nu_în", array(1, 2));) // post (post) id returnează $interogare; ) add_filter(" pre_get_posts","exclude_post");

funcția exclude_post ($interogare) (

if ($interogare -> is_category )

( $interogare -> set ( "post__not_in" , matrice ( 1 , 2 ) ) ; ) // ID post

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_post" );

Acest cod poate fi modificat pentru a aplica o excepție de la arhive. Este necesar să înlocuiți funcția is_category cu is_archive în a 2-a clădire.

Excluderea din pagina de căutare

Această opțiune poate fi necesară și dacă unele postări nu ar trebui să fie afișate vizitatorilor atunci când folosesc căutarea pe site. De exemplu, acestea ar putea fi diverse articole de știri care nu conțin conținut pe subiectul site-ului.

funcția exclude_post($interogare) ( if ($query->is_search) ($query->set("post__not_in", array(1, 2));) // post id return $query; ) add_filter(" pre_get_posts", „exclude_post”);

funcția exclude_post ($interogare) (

if ($query -> is_search )

( $interogare -> set ( "post__not_in" , matrice ( 1 , 2 ) ) ; ) // ID post

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_post" );

Combinând mai multe opțiuni

Puteți combina toate opțiunile de mai sus și puteți exclude înregistrările din toate tipurile de pagini simultan sau selectiv pe cele necesare.

Dacă vă uitați bine la toate codurile, atunci în a doua linie puteți vedea o condiție în care parametrul tipuri de pagină este setat pentru a dezactiva afișarea anunțurilor postate în ele:

  • is_search
  • is_category
  • is_feed
  • este_acasă

Puteți combina toate opțiunile și puteți exclude postările de oriunde sau de pe unele pagini. De exemplu, pentru excluderile din categorii și main, ar trebui să plasați următorul cod în fișierul functions.php.

funcția exclude_post($interogare) ( dacă ($interogare->este_categorie || ($interogare->este_acasă)) ($interogare->set("post__nu_în", array(1, 2));) // ID post ) return $query; ) add_filter("pre_get_posts","exclude_post");

funcția exclude_post ($interogare) (

if ($interogare -> este_categorie || ($interogare -> este_acasă ) )

( $interogare -> set ( "post__not_in" , matrice ( 1 , 2 ) ) ; ) // ID post

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_post" );

A doua linie cu condiția (if) conține parametri pentru categorii (is_category) sau home (is_home).

Rețineți că fiecare parametru următor este scris în interiorul celui precedent prin 2 bare verticale și este situat între paranteze proprii. Adică, dacă te uiți la codul anterior, vei vedea că a doua condiție pentru pagina principală este inclusă în propriile paranteze și se află în parantezele generale care înglobează prima condiție pentru categorii.

Dacă merită să adăugați un fel de a treia condiție, de exemplu pentru paginile de arhivă, atunci merită să o adăugați între paranteze cu condiția pentru cea principală (is_home) și să o scrieți prin 2 bare verticale. În practică arată așa.

funcția exclude_post($interogare) ( dacă ($interogare->este_categorie || ($interogare->este_acasă || ($interogare->este_arhivă)))) ($interogare->set("post__nu_în", array(1, 2) );) // id-ul postării (postării) return $query ) add_filter("pre_get_posts","exclude_post");

funcția exclude_post ($interogare) (

if ($interogare -> este_categorie || ($interogare -> este_acasă || ($interogare -> este_arhivă ) ) )

( $interogare -> set ( "post__not_in" , matrice ( 1 , 2 ) ) ; ) // ID post

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_post" );

Folosind același principiu, adăugați alte tipuri de pagini de exclus.

Următoarea opțiune pentru excluderea înregistrărilor este să excludeți titluri întregi (categorii).

Excluzând categorii întregi

Acest lucru este foarte convenabil pentru leneși, când puteți pur și simplu să creați un fel de categorie și să adăugați acolo toate postările care nu necesită afișare pe anumite tipuri de pagini.

Structura codului este aproape aceeași. Schimbă doar parametrul care specifică excluderea unei postări sau a unei categorii. În cazurile discutate anterior, ultima linie a fost setată la exclude_post. În noul cod ar trebui înlocuit cu exclude_cat.

funcția exclude_cat($interogare) ( dacă ($interogare->este_acasă) ($interogare->set("pisica","-1, -2, -3");) // ID categorie returnează $interogare; ) add_filter( "pre_get_posts","exclude_cat");

funcția exclude_cat ($interogare) (

if ($interogare -> is_home )

( $interogare -> set ("pisica", "-1, -2, -3" ) ; ) // ID categorie

returnează $interogare ; )

add_filter ("pre_get_posts" , "exclude_cat" );

După cum puteți vedea, ultima linie a suferit modificări și a treia linie, unde parametrul care citește ID-ul categoriei a fost modificat. ID-ul în acest caz se scrie printr-o liniuță, dar și prin virgulă.

Principiul construirii condițiilor pentru tipurile de pagini este similar cu opțiunile discutate mai devreme, unde am arătat exemplul excluderii unor postări specifice. Merită să schimbați linia a 2-a, adăugând parametrii necesari pentru categorii, căutare, arhive sau fluxuri RSS.

Deci, ne-am uitat la metode fără un plugin. Există, de asemenea, o opțiune de excludere a intrărilor despre etichete, dar acum etichetele nu mai sunt foarte relevante pentru 99% din resurse. Dacă aveți nevoie de astfel de informații, vă rugăm să scrieți despre ele în comentarii. Voi adăuga totul imediat.

Pluginuri

Pluginurile sunt o soluție mai flexibilă în această problemă, deoarece atunci când excludeți anumite intrări nu este nevoie să editați fișierul șablon de fiecare dată. Merită să puneți o casetă de selectare în editorul postărilor dorite atunci când le publicați sau după.

Dacă merită să excludeți o categorie specială creată pentru articolele care nu necesită afișare, atunci este mai bine să utilizați unul dintre codurile furnizate mai sus.

Pur și simplu Excludeți pluginul

Puteți descărca pluginul fie prin consola WordPress folosind căutarea, fie de la site-ul oficial WordPress.

După activare, va funcționa deja și nu trebuie să-l configurați. Dar totuși, recomand să faceți câteva modificări pentru a face lucrul cu funcțiile sale mai plăcut.

După instalare și activare, mergem imediat la setările acestuia.

Inițial, în setările pluginului, totul este setat astfel încât atunci când caseta de selectare este activată (o vom privi mai jos), paginile necesare (postări, categorii, pagini) să fie marcate ca „permise pentru afișare”. Astfel, pentru fiecare tip de pagină va trebui să bifați toate casetele de selectare pentru ca totul să fie afișat.

Ar fi mai logic să setați această opțiune atunci când, activând o casetă de selectare (de exemplu, pentru pagina principală), va marca un articol sau altceva ca interzis pentru afișare.

În setări există 3 file care sunt concepute pentru a configura setările pentru diferite tipuri de pagini:

  • Taxonomii (taxonomii) - setări pentru funcționarea pluginului în secțiuni din panoul de administrare WordPress: categorii și etichete;
  • Tipuri de postări - pentru tipuri de postări: articole și pagini;
  • Utilizatori - setări pentru utilizatori.

Acum voi da o captură de ecran a setărilor primei file (taxonomie) și voi explica parametrii care ar trebui setați.

  • În primul bloc de setări „Activ” trebuie să setați caseta de validare „Activ”, astfel încât pluginul să adauge casetele de selectare necesare pentru a dezactiva afișarea în categorii sau orice alte tipuri de pagini;
  • În al doilea bloc setăm toți parametrii vizavi de opțiunea „Exclude”. Înseamnă că dacă caseta de selectare este activată în editorul fiecărui tip de pagină, aceasta va fi ascunsă de afișare și articole noi vor fi deschise pentru afișare în mod implicit. Dacă setați parametrul „Include only”, atunci bifând caseta de selectare, intrările vor fi deschise pentru afișare și articolele noi vor fi ascunse în mod implicit. Dacă a doua opțiune „Include only” este selectată, atunci după instalarea pluginului toate intrările vor fi ascunse și va trebui să setați opțiunea „Exclude”;
  • În blocul „Afișare/Ascunde”, setați parametrul „Afișare” astfel încât casetele de selectare necesare să fie afișate în fiecare tip de pagină pentru a putea dezactiva sau activa afișarea.

Aceiași parametri ar trebui introduși în celelalte 2 file din setările pluginului Simply Exclude.

De exemplu, iată o captură de ecran a filei „Tipuri de postări”.

Desigur, puteți dezactiva funcționarea unor funcții, de exemplu, în prima filă puteți dezactiva pluginul pentru categorii dacă nu vom exclude toate postările unei întregi categorii.

Acum despre munca pluginului în sine. Când ați setat parametrii necesari, puteți merge la editor pentru fiecare tip de postare și puteți bifa casete lângă acele pagini în care doriți să excludeți afișarea acestora.

De exemplu, pentru a seta setările pentru postări, puteți merge la editorul articolului solicitat sau prin elementul toate articolele. Atât acolo, cât și acolo vor fi casetele de selectare necesare. În editor, în coloana din dreapta va exista un bloc „Pur și simplu Excludeți” care conține 4 casete de selectare pentru ascunderea postărilor și paginilor:

  • Arhive - categorii și arhive;
  • Fluxuri - fluxuri RSS;
  • Față/Acasă - principal;
  • Căutări - căutare.

Bifând caseta de selectare necesară, puteți ascunde postarea dintr-un anumit tip de pagină.

În panoul de administrare WordPress „Toate postările” vizavi de fiecare material, într-o nouă coloană numită „Pur și simplu Excludeți spectacol” vor exista și aceste 4 casete de selectare. Același lucru este valabil și pentru rubrici. Va fi adăugată o nouă coloană cu toate casetele de selectare.


Asta e tot pentru acest plugin. Instalând-o, puteți modifica foarte rapid și flexibil parametrii de afișare a anumitor postări sau categorii întregi, fără a interfera cu fișierele șablon.

Excludeți pluginul Categorii

Pluginul are scopul doar de a ascunde o întreagă categorie din pagina principală și din fluxul RSS. Deoarece această opțiune nu necesită multă flexibilitate (am creat o categorie o dată și am adăugat articole acolo), recomand implementarea excluderii unei întregi categorii folosind cod (vezi punctul 2).

Puteți descărca pluginul folosind butonul de mai jos.

După instalare, accesați setări (Setări - Exclude categorie) și selectați categoria necesară pentru a o exclude din pagina principală.

Excluderea tuturor intrărilor dintr-o categorie este o opțiune comună. Dar văd un dezavantaj în el, deoarece site-ul trebuie să publice o mulțime de articole pentru a atrage trafic de căutare și toate vor fi pe probleme diferite ale aceluiași subiect.

Dar introducerea diferitelor materiale într-o singură categorie nu este foarte bună.

Această opțiune este adesea folosită și atunci când se vinde în mod activ link-uri pe un site web. Proprietarul creează o secțiune și publică toate articolele cu link-uri de vânzare în ea. Și nici acest lucru nu este foarte bun, deoarece acum webmasterii solicită plasarea unui link într-una dintre secțiunile principale ale site-ului, astfel încât să fie cel puțin ușor clicabil și să aibă efect în timpul promovării.

Asta e, băieți, pe această notă închei acest manual detaliat, care ar trebui să vă fie util dacă ați ajuns la locul potrivit pentru acest articol. Sper că totul merge bine pentru tine.

Vă doresc o dispoziție minunată și o zi minunată. Te văd.

Salutări, Konstantin Khmelev!

    Cum pot limita afișarea unui anumit bloc numai pe pagina principală dacă nu este în home.html?

    De fapt, subiect. Tema de design „DEFAULT”. Dacă eliminați codul de mai jos din index.html, atunci, firește, bara laterală este eliminată de pe întreg site-ul. În același timp, rămâne spațiu gol pentru el....

    Bună ziua Spune-mi cum să afișez subcategorii, categorii https://diokom.ru/resheniya/ în aceeași formă (în dreptunghiuri), dar fără produse, doar pe pagina principală.

    Există o soluție

    Salutare tuturor. Sufar de zile întregi, blocul fiind afișat doar pe pagina principală. Am încercat diferite opțiuni, uneori se afișează doar pe pagina principală a magazinului, alteori se afișează pe toate paginile cu excepția magazinului. Tocmai am început să lucrez cu sistemul, încă nu înțeleg totul.

    Multe opțiuni https://site/2426/funktsiya-proverk......

    Bună ziua, dragi programatori! Următoarea sarcină este necesară - Toate bunurile de pe pagina principală cu încărcare folosind butonul „afișați mai multe” sau cel puțin pagină cu pagină, dacă utilizați lista de bestseller-uri încorporată - în mod standard. .

    Există o soluție

    Am conectat certificatul SSL În .htaccess este scris astfel: RewriteCond %(HTTPS) offRewriteRule ^(.*)$ https://%(HTTP_HOST)%(REQUEST_URI) RewriteEngine OnRewriteCond %(HTTP_HOST) ^www.site. com$ RewriteRule ^( .*)$ https://site.com/$1 În...

    Nu înțeleg unde se află fișierul index.php cu întregul corp al magazinului online? Pentru a modifica detaliile de contact pe pagina principală. Am găsit un singur astfel de fișier în directorul rădăcină al site-ului, dar conține doar titlul site-ului.

    Bună ziua Pentru a instala glisorul, instrucțiunile descriu următorii pași:===cut===Puteți plasa glisorul pe orice tip de pagină (vitrină, catalog, pagină de informații magazin etc.). Pentru a face acest lucru, scrieți linia (* în...

    De fapt, problema este că încerc să afișez formularul de autorizare (Șablon „Easy Buy”) pe pagina principală, totul pare să fie în regulă, dar când dau clic pe butonul „login”, nu mi-am dat seama codul (multumesc...

    Cum te poți asigura că pagina principală afișează aleatoriu produse de la toate, și nu doar de la cele mai bine vândute?!

    Trageți macheta PSD pe pagina de pornire

    Website pe Webasyst Shop-Script 306 ✨Trebuie să creați un aspect PSD gata făcut doar pentru pagina principală a site-ului, ținând cont de mobilul adaptiv. versiuni pentru site-ul www.guarana.in.ua Voi trimite un layout la cerere Plata la livrare, posibila in 50/50 rate dupa prima parte a lucrarii....

    Bună, iată o problemă: pe pagina principală a magazinului imaginile nu sunt afișate în glisor Potrivit dezvoltatorului de șablon, acest glisor este implementat folosind instrumente standard ale aplicației PHOTO. Folosesc șablonul „Cumpără...

    Bună ziua, colegi, cum pot să mă asigur că toate recenziile de produse sunt afișate pe pagina principală. Acum arată așa: - doar două recenzii din sute?

    Extindeți bara de căutare standard, puneți un filtru de produs pe pagina principală sau afișați o categorie de produse cu un filtru

    Extindeți bara de căutare standard, puneți un filtru de produs pe pagina principală sau afișați o categorie de produse cu un filtru. Arătați cum să faceți posibilă căutarea imobilelor în filtru în funcție de distanța de la mare, afișând în prezent...

    Buna ziua! Pe pagina principală a temei de design „Hypermarket” 1.2.0 (hipermarket) nu sunt afișate soldurile stocurilor. Iar soldurile stocurilor sunt afisate doar daca intri direct in produs!!! Cum se poate rezolva asta?

    +1

    Afișați filtrul de produs pe pagina principală

    Site-ul este motoshiny.rus, în partea de sus a paginii principale există o bandă cu categoriile principale vreau ca filtrul să fie dedesubt, paralel cu această bandă cu categorii, nu ar trebui să se extindă dincolo de marginile banner deasupra căruia va fi...

    Vreau să fac un magazin care să aibă foarte puține articole. Prin urmare, pagina principală îmi este suficientă pentru a afișa toate categoriile de produse pe ea. Pur și simplu nu îmi pot da seama cum să fac asta. Aș fi recunoscător pentru indiciu.

    Este necesar ca harta de căi și titlul să nu fie afișate pe pagina principală, dar să fie în același timp disponibile și pe alte pagini. Multumesc

    Buna ziua, ma confrunt cu nevoia de a scrie reguli CSS pentru blocul principal in headerul site-ului #header screenshot, cu conditia ca regulile sa fie aplicate doar pe pagina principala. (Temă bazată pe standardul „Sidebar”) În mulți cms...

    Există o soluție

    Bună, în general, întrebarea este în titlu. Cum să ascunzi un bloc numai pe pagina principală a site-ului.

    (if isset($frontend_homepage))Codul dvs.(/if)Acest lucru nu va funcționa pentru toate aplicațiile: doar pentru magazin și „Hub”, din câte știu eu. De exemplu, în „Site” nu există o variabilă frontend_homepage. Opțiuni mai universale vor fi următoarele (în același timp, ținând cont de posibilele etichete UTM în URL-urile paginii - la verificarea adresei paginii, aruncăm parametrii GET)://Doar pe pagina principală (dacă $wa->currentUrl(false) , true) == $wa_url) cod pe pagina principală(/if) //Peste tot, cu excepția paginii principale (dacă $wa->currentUrl(false, true)...

    Şobolan

    Există o soluție

    Salutări! Blogul este împărțit în 2 părți - „știri” și „articole”. Spune-mi cum să afișez ultimele postări doar din secțiunea „știri” de pe pagina principală? Foloseste standard...

    Există cod în blocul însuși ($latest_posts = $wa->blog->posts()) dacă specificați un număr în $wa->blog->posts(1) - id-ul blogului, atunci numai postările de la va fi selectat.

    Cum să vă asigurați că produsele sunt pe pagina principală a magazinului? Am scris acolo"