Structura WordPress. Înțelegerea funcționării interioare a WordPress

În această postare vom vorbi despre ce nume au fișierele tematice WordPress și ce pagină de pe site este responsabilă pentru afișarea fiecăruia dintre ele. Acest lucru este foarte important, necesar și, în același timp, foarte simplu de înțeles cunoștințele. Toți cei care lucrează cu WordPress ar trebui să le aibă. Mai jos este o descriere completă a structurii fișierelor cu teme WordPress și ordinea în care sunt conectate (ierarhie).

Am menționat ierarhia fișierelor teme în articolul „Etichete condiționate în WordPress”. Și mai jos este același lucru, doar mai detaliat și mai clar.

Conexiuni la fișierele tematice (teorie)

Ierarhia, în acest caz verificarea secvențială, indică faptul că mai multe nume de fișiere sunt potrivite pentru afișarea unei pagini pe site. Verificarea ce fișier va fi folosit se face unul câte unul. Acestea. există o listă de fișiere, fiecare dintre ele este verificat pe rând pentru existența fizică, de îndată ce este găsit un fișier existent, verificarea se oprește și fișierul găsit este folosit ca șablon.

De exemplu, mergem la pagina din categoria „Plugins” cu eticheta de pluginuri și id 25 - http://example.com/category/plugins. Apoi, pentru a genera codul pentru această pagină, WordPress va verifica prezența următoarelor fișiere unul câte unul (verificarea se va opri la primul fișier existent):

  • categorie-plugins.php
  • categoria-25.php
  • categorie.php
  • arhiva.php
  • index.php

Schema completă pentru toate tipurile de pagini și fișierele acestora arată astfel:

O altă diagramă, poate este mai clară (veche):

Tipuri de pagini și nume de fișiere

Mai jos este o listă de pagini și fișierele tematice responsabile pentru acestea. Această secțiune arată o imagine a ierarhiei fișierelor cu teme, care este puțin mai mare.

Mai jos este pagina site-ului și lista corespunzătoare de fișiere PHP. Astfel de fișiere ar trebui să fie localizate în folderul rădăcină al temei.

Postări

Pagina (pagina de înregistrare)

  • (any_name).php (atunci când utilizați un șablon de pagină)
  • pagina-(post_label).php
  • pagina-(post_ID).php
  • pagina.php
  • singular.php
  • index.php

Înregistrare (post înregistrare)

  • single-post-(post_label).php
  • single-post.php
  • singur.php
  • singular.php
  • index.php

Tip de postare personalizat

  • (any_name).php (pentru tipul de arbore cu suport pentru șablon. De la WP 4.7)
  • single-(post_type)-(post_label).php
  • single-(tip_post).php
  • singur.php
  • singular.php
  • index.php

Atașamentul

  • (start_MIME_type).php
  • (end_MIME_type).php
  • (start_MIME_type)-(end_MIME_type).php
  • atașament.php
  • single-attachment-(attachment_label).php (vă permite să specificați un șablon pentru o singură imagine)
  • single-attachment.php (la fel ca attachment.php)
  • singur.php
  • singular.php
  • index.php

Prin începutul și sfârșitul unui tip MIME, înțelegem prima și ultima parte a tipului MIME, separate prin / . De exemplu, tipul MIME al unui fișier text este „text/plain”, ceea ce înseamnă că fișierul va fi verificat pentru text.php , apoi plain.php , apoi text-plain.php .

Arhive

404 pagina

  • 404.php
  • index.php

Pagina de căutare

  • căutare.php
  • index.php

pagina principala

  • prima pagină.php
  • (logica paginilor persistente dacă este selectată pagina principală)
  • acasă.php
  • index.php

Pagina de blog

Pagina de blog apare atunci când pagina principală este setată la o pagină permanentă

  • acasă.php
  • index.php

Încorporează

Șabloanele de încorporare sunt utilizate atunci când se solicită o înregistrare prin API-ul REST. Încorporarile au apărut în versiunea 4.5 și vă permit să vă încorporați postările în site-urile altor persoane. Vedeți get_post_embed_url()

  • embed-(post-type)-(post_format).php
  • embed-(post-type).php
  • încorporat.php

Pentru a modifica numai conținutul de încorporare, puteți crea un fișier embed-content.php în temă și puteți descrie HTML-ul acolo. HTML-ul original este în fișierul motor /wp-includes/theme-compat/embed-content.php

Cum functioneaza

Fișierul de bază wp-includes/template-loader.php este responsabil pentru toată logica: ce fișier să includă. Dacă te uiți la el, totul este descris în el. Dar această activitate nu este deosebit de interesantă, așa că o voi scrie.

În primul rând. template-loader.php este conectat după ce s-a încărcat întregul mediu WordPress. După ce fișierul wp-load.php a fost procesat și cererea principală a fost procesată, funcția wp(). Acestea. template-loader.php este conectat chiar la capătul scriptului PHP...

La început Cârligul template_redirect este declanșat. În acest hook puteți efectua câteva verificări și, dacă este necesar, redirecționați către o altă adresă URL. În el, trebuie să terminați scriptul folosind die() . Acestea. dacă acest cârlig schimbă ceva, atunci munca fișierului template-loader.php ar trebui să se termine și „zburăm” către altă pagină.

Site-urile web create pe motorul WordPress au o structură specială care diferă de structură

Când se familiarizează pentru prima dată cu dezvoltarea site-ului, de obicei vorbesc despre structura ierarhică a site-ului. Esența acestuia este că întregul site este format din multe pagini, paginile sunt combinate în secțiuni, care, la rândul lor, în secțiuni mai mari etc. Sistemului de meniu pe mai multe niveluri îi corespunde și acest sistem de plasare a materialelor. Această structură a site-urilor este similară cu structura de fișiere a unui computer, prin urmare este familiară și de înțeles.

Structura postării materialelor pe motorul WordPress, folosită pentru a crea majoritatea acestora, nu este ierarhică, ci bazată pe rețea, așa că nu este clar la prima vedere. Acest lucru poate, într-o oarecare măsură, să descurajeze un webmaster începător să folosească CMS-ul WordPress.

De aceea este nevoie să înțelegem cum funcționează un site WordPress.

Apropo, dacă doriți să învățați cum să creați site-uri web și bloguri folosind CMS WordPress și cu un design unic, cel mai bine este să urmați cursul „Un site unic de la zero.” Vă puteți familiariza cu el folosind link-ul de mai jos.

Site unic de la zero

Există trei zone principale în structura oricărui site web:

  1. Structura externă. Ne arată aspectul paginii, plasarea elementelor individuale și a blocurilor unul față de celălalt.
  2. Structura internă, adică structura conexiunilor dintre materialele individuale care formează conținutul.
  3. O structură de fișiere care arată relația dintre fișierele care alcătuiesc întregul site.

Deci, cum arată un site WordPress?

Trebuie remarcat imediat că depinde de alegerea șablonului. Există un număr mare de astfel de șabloane și, desigur, site-urile pot diferi foarte mult unele de altele. Dar există și caracteristici comune cărora le vom acorda atenție. Acest site poate fi luat ca exemplu.

În partea de sus a paginii există de obicei antet. Poate conține numele site-ului, logo-ul, sloganul, uneori o bară de căutare, butoanele rețelelor sociale.

Sub antet, și uneori sub acesta, se află cel mai adesea meniul principal.

În partea de jos a paginii vedem subsol. Poate conține informații de service. De exemplu, despre autorii site-ului, drepturile de autor. Uneori puteți găsi acolo butoane de rețele sociale, unele elemente de navigare etc.

În partea de mijloc a paginii există un flux de postări și coloană laterală (bara laterală).

Postări (postări)– partea principală a unui site WordPress. Acestea conțin conținutul principal, ceea ce creatorul site-ului a vrut să le spună vizitatorilor săi.

Fiecare intrare nouă apare în partea de sus a fluxului, cele vechi cad mai jos. Puteți vedea doar un număr limitat de intrări pe o pagină, de exemplu zece. Alte intrări pot fi accesate folosind butoanele de navigare corespunzătoare. O altă caracteristică a fluxului de postări este că pe pagina principală vedem cel mai adesea nu toate postările, ci doar primele paragrafe. Acest lucru facilitează selectarea articolului de care aveți nevoie. Dar acest lucru se aplică deja structurii interne a site-ului.

Pe lângă feed-ul de postare, conținutul se află și pe pagini permanente care nu se modifică sau nu se mișcă. Astfel de pagini conțin de obicei informații despre autor, despre site, harta site-ului, informații de contact etc.

Pe partea laterală a benzii există coloană laterală (bara laterală). Pot exista și diverse opțiuni în locația sa. Bara laterală poate fi situată în stânga sau în dreapta, poate fi una sau două.

De exemplu, șablon Admirat, utilizat pe acest site, vă permite să utilizați următoarele opțiuni de aspect pentru bara laterală:

Bara laterală este formată din separat blocuri widget (widget). Numărul și locația acestora sunt stabilite de administratorul site-ului și se modifică destul de ușor.

Acum să trecem la structura internă a unui site WordPress. Aici se află caracteristicile acestui motor. Sistemul de navigație este format din mai multe părți.

În primul rând, meniul principal. Acest meniu ne duce la pagini permanente. Pot exista multe astfel de pagini, dar meniul poate fi și complex și pe mai multe niveluri. În acest caz avem o structură ierarhică. Dar elementele de meniu nu duc la postări, cu excepția unui element care deschide fluxul principal de postări.

Pentru a naviga prin înregistrări, se folosește un sistem diferit, bazat pe conceptele de „categorie” și „etichetă”.

Când scrieți un alt articol, acesta este legat de o anumită categorie, sau chiar nu una, ci două sau trei. Bara laterală are un widget cu o listă de categorii și putem selecta articole legate de o categorie din întregul feed de postări.

În plus, fiecărui articol îi sunt atribuite etichete - cuvinte care caracterizează această intrare. De asemenea, pot exista mai multe dintre aceste etichete și puteți selecta înregistrări după etichetă. Etichetele sunt de obicei vizibile la sfârșitul fiecărui articol. În plus, un widget „Tag Cloud” este adesea plasat în bara laterală, care arată toate etichetele și vă permite să selectați articole făcând clic pe aceste cuvinte cheie.

Structura externă a paginii și structura plasării materialelor site-ului sunt importante pentru ei, dar structura fișierului nu le este vizibilă. Este de interes în principal pentru dezvoltatorii de site-uri.

Pe scurt despre această structură. Ca orice site web, un site WordPress este format din multe fișiere. Să ne uităm la cele mai importante lucruri.

În primul rând, tot conținutul este stocat separat pe server într-o bază de date MySQL.

În al doilea rând, fișierele imagine sunt localizate în foldere separate.

Și în al treilea rând, paginile în sine sunt formate din fișiere PHP separate. Numărul acestor fișiere poate varia, acest lucru depinde și de alegerea șablonului, dar există fișiere de bază necesare.

Pentru a vedea aceste fișiere, trebuie să le selectați în consola de management WordPress Aspect? Editat R. O listă cu toate fișierele WP se va deschide în partea dreaptă. De exemplu:

  • Arhive
    (archive.php)

Această postare va colecta informații despre structura WordPress într-un sens sau altul. Structura bazei de date și a tabelelor din baza de date - de ce sunt acestea și ce este stocat în ele. Structura folderelor, ce fișiere sunt în ele, scopul acestor fișiere și directoare. Lista de roluri, funcții etc.

Am transferat informațiile din postarea „Note WordPress, trucuri și hack-uri”, care a crescut atât de mult încât trebuie împărțit.

  • Administrator- acces absolut la gestionarea temelor, utilizatorilor, plugin-urilor, setărilor, paginilor, postărilor, categoriilor, comentariilor, export-import de conținut.
  • Editor- editarea, crearea, ștergerea conținutului propriu și al altor persoane, moderarea comentariilor, editarea categoriilor, ștergerea, editarea, publicarea paginilor proprii și a altor persoane, postări, încărcare de fișiere.
  • Autor- crearea, editarea, publicarea și ștergerea numai a conținutului dvs. - înregistrări. Nu se pot crea pagini. Are dreptul de a încărca imagini, fișiere și orice materiale.
  • Colaborator- poate adăuga conținut nou - înregistrare, fără drepturi de publicare. Pot edita și șterge schițele lor. Nu se pot adăuga imagini la o postare, doar prin utilizarea unui cod HTML care conține un link către imagine. Participanții pot vedea, de asemenea, intrările în consolă.
  • Abonat- puteți permite abonaților să vadă postări și pagini private fără pluginuri sau coduri suplimentare.

Structura tabelului în baza de date WordPress:

  • wp_commentmeta – pentru metadatele comentariilor
  • wp_comments – comentarii
  • wp_links - depreciat; stochează informațiile introduse în secțiunea de linkuri WordPress
  • wp_options – tot ce se află în secțiunea Opțiuni a panoului de administrare este stocat în acest tabel, setările site-ului
  • wp_postmeta – post metadate
  • wp_posts – postări, pagini, revizuirile acestora și punctele de navigare
    • id - postări, pagini, revizuiri
    • post_author - id-ul utilizatorului - autorul.
    • post_date - data postării
    • post_date_gmt - data postării în GMT
    • post_content - postare conținut
    • post_title - titlul postării
    • post_excerpt – descrierea postării
    • post_status – starea postării: publicare, schiță, schiță automată, moștenire
    • comment_status – „deschis” dacă comentarea unei postări este permisă și „închis” dacă este interzis.
    • ping_status
    • post_password - parola pentru citirea postării dacă este protejată prin parolă
    • post_name - alias al postării care va fi folosit în legăturile CNC.
    • to_ping
    • ping
    • post_modified - data ultimei modificări a postării
    • post_modified_gmt - data ultimei modificări a postării în GMT
    • post_content_filtered
    • post_parent - id-ul postării părinte a postării, dacă nu există niciun părinte, atunci valoarea este 0
    • guid – postare URL sub forma http://site/?p=id pentru postări sau http://site/category/test/name - pentru pagini
    • menu_order – zero pentru postare, numărul de serie al paginii, folosit pentru a determina ordinea în care sunt afișate paginile
    • tip_post - tip post, poate fi: post - postare, pagină - pagină, revizuire - versiunea salvată a paginii sau postării, atașament - media, de exemplu o pagină imagine
    • post_mime_type
    • comment_count - numărul de comentarii la postare
  • wp_terms – conține în principal informații despre termeni/taxonomii (categorie, categorie de link, etichetă, meniu)
    • term_id - id-ul termenului (de exemplu categorii)
    • nume - nume termen
    • slug - cum va fi scris termenul în link
  • wp_term_relationships – relații dintre postări și categorii, etichete și alte taxonomii
    • object_id - id-ul postării, link-ul
    • term_taxonomy_id - id-ul unei categorii sau al oricărui alt termen de taxonomie (categorie, categorie de link, etichetă)
    • term_order - folosit pentru sortare
  • wp_term_taxonomy – descrie ce tip de termen este acest sau acel termen
    • term_taxonomy_id - id-ul taxonomiei
    • term_id - term id
    • taxonomy - tip de taxonomie: categorie, link_category, post_tag, nav_menu
    • părinte - termen părinte, dacă de exemplu o categorie este imbricată într-o categorie
    • count - numărul de obiecte (înregistrări, linkuri) asociate taxonomiei
  • wp_usermeta – drepturi de utilizator și informații suplimentare despre utilizatorii înregistrați
  • wp_users – toți utilizatorii

Structura fișierului Wordpress

Directorul rădăcină conține următoarele foldere și fișiere folder:

  • wp-config.php- acest fișier php conține numele și parola bazei de date, codificarea, prefixul tabelului, limba, dimensiunea cache-ului, puteți adăuga mulți alți parametri la fișier.
  • File.htaccess- un fișier de configurare suplimentar pentru serverul web Apache, precum și pentru servere similare. Vă permite să setați un număr mare de parametri și permisiuni suplimentare pentru serverul web în directoare individuale.
  • wp-include- Miezul WordPress. Cu fiecare actualizare, folderul este suprascris.
  • wp-admin- Fișiere CSS, JavaScript și PHP care oferă consola de administrare. Cu fiecare actualizare, folderul este suprascris.
  • wp-conținut- conține foldere de utilizator și constă din foldere:
    • limbi - conține fișiere de traducere a motorului în format .mo și .po
    • pluginuri - pluginuri instalate
    • teme- șabloane instalate, trebuie instalat cel puțin un șablon. Poate conține următoarele foldere și fișiere:
      • index.php - șablon pentru pagina principală a site-ului, încarcă și fișierul barei laterale. Fișier necesar, în rădăcina folderului șablon
      • style.css - un fișier obligatoriu, responsabil pentru stilurile CSS ale șablonului, în rădăcina folderului șablon
      • header.php – fișier responsabil pentru ieșirea datelor în secțiune și meniul de sus
      • sidebar.php – fișierul este responsabil pentru generarea coloanelor laterale (suplimentare). Practic, categoriile, etichetele și bannerele sunt afișate aici.
      • footer.php – fișierul este responsabil pentru afișarea subsolului, meniului de jos, drepturilor de autor și închide etichetele HTML
      • single.php – este responsabil pentru afișarea postărilor individuale.
      • page.php – este responsabil pentru afișarea paginilor individuale (de exemplu, „Contact”, „Despre noi”, etc.)
      • archive.php – este responsabil pentru afișarea paginii de arhivă a înregistrărilor
      • categorie.php – generează pagini care afișează publicații pe categorii
      • tag.php – șablon de pagină care afișează o listă de publicații după etichete
      • comments.php – fișierul descrie modul în care sunt afișate comentariile
      • functions.php – un fișier suplimentar cu cod PHP, datorită căruia puteți activa sau dezactiva, adăuga sau elimina anumite funcționalități. Codul personalizat este adesea adăugat la acest fișier dacă ceva trebuie îmbunătățit.
      • /css/ - acest folder poate conține fișiere CSS suplimentare
      • /js/ – folder cu fișiere JavaScript
      • /images/ - folderul conține imagini încorporate în șablon
      • /languages/ - folderul conține fișiere de traducere a temelor
    • încărcări - fișiere media: imagini, muzică, documente etc.

Etichete șablon în WordPress

Etichetele șablon sunt funcții PHP din WordPress pentru afișarea informațiilor sau pentru crearea unui blog, de exemplu wp_list_pages() - afișează o listă de pagini sub formă de link-uri.

În WordPress în sine, etichetele șablonului sunt descrise în următoarele fișiere:

  • wp-includes/author-template.php - etichete de șablon legate de autor
  • wp-includes/bookmark-template.php - etichete șablon asociate cu marcajele
  • wp-includes/category-template.php - etichete șablon despre toate condițiile și taxonomia, inclusiv categoriile și etichetele
  • wp-includes/comment-template.php - fișier pentru etichetele șablonului pentru secțiunea de comentarii
  • wp-includes/link-template.php - etichete șablon pentru link-uri (permalink-uri, link-uri atașate, link-uri de arhivă etc.)
  • wp-includes/nav-menu-template.php - etichete șablon pentru meniul de navigare
  • wp-includes/post-template.php - etichete șablon asociate postărilor
  • wp-includes/post-thumbnail-template.php - fișier pentru etichetele șablon asociate cu miniaturile postării
  • wp-includes/general-template.php - fișier pentru alte etichete șablon care pot fi folosite oriunde

Doriți să aflați mai multe despre structura fișierelor WordPress? Și, de asemenea, despre software-ul de bază WordPress, teme, plugin-uri și toate încărcările utilizatorilor care sunt stocate pe site? Voi vorbi despre toate acestea în acest articol.

De ce trebuie să cunoașteți structura fișierelor WordPress?

Mulți utilizatori încep să lucreze cu WordPress fără nicio idee despre fișierele și directoarele sale, ceea ce este foarte rău. La urma urmei, cunoștințele despre fișierele și directoarele WordPress, unde este stocat și de ce, pot ajuta la rezolvarea multor probleme comune fără ajutor extern.

În acest articol veți învăța:

  • Ce fișiere și directoare sunt root.
  • Unde WordPress stochează imagini și încărcări media.
  • Unde stochează WordPress teme și pluginuri?
  • Unde sunt stocate fișierele de configurare?

Acum să trecem la explorarea structurii fișierelor WordPress.

Accesarea fișierelor și directoarelor WordPress

Pentru a începe, conectați-vă la serverul dvs. WordPress folosind un client FTP. Pentru mai multe detalii, citiți ghidul despre cum să utilizați FTP pentru a încărca fișiere WordPress (în desfășurare). O alternativă mai simplă la FTP este File Manager (o aplicație web cu un panou de administrare cPanel încorporat). Odată ce vă conectați la WordPress prin FTP sau File Manager, veți vedea o structură de fișiere și directoare cam așa:

Fișierele rădăcină WordPress sunt evidențiate cu roșu. Funcționarea corectă a site-ului depinde în niciun caz de aceste fișiere;

Iată o listă a acestor fișiere și foldere din directorul rădăcină:

  • wp-admin
  • wp-include
  • wp-activate.php
  • wp-blog-header.php
  • wp-comments-post.php
  • wp-config-sample.php
  • wp-cron.php
  • wp-links-opml.php
  • wp-load.php
  • wp-login.php
  • wp-mail.php
  • wp-settings.php
  • wp-signup.php
  • wp-trackback.php

Fișiere de configurare

Directorul rădăcină WordPress stochează câteva fișiere de configurare speciale. Aceste fișiere conțin setări importante specifice site-ului dvs. WordPress.

  • .htaccess este un fișier de configurare a serverului, WordPress îl folosește pentru a gestiona permalink-urile și .
  • wp-config.php – Spune WordPress cum să se conecteze la baza de date. De asemenea, stabilește câteva setări importante.
  • index.php este un fișier index care practic încarcă și inițializează toate fișierele WordPress atunci când un utilizator solicită o pagină.

Uneori este nevoie să editați fișierele wp-config.php sau .htaccess. Fii extrem de atent și atent când faci asta. Orice eroare minoră poate face site-ul dvs. web indisponibil. De aceea, înainte de a schimba ceva aici, asigurați-vă că faceți copii de rezervă ale acestor fișiere. Dacă nu vedeți fișierul .htaccess în directorul rădăcină, atunci citiți instrucțiunile despre motivul pentru care fișierul .htaccess nu este vizibil în directorul rădăcină (în curs de scris).

În funcție de instalarea WordPress, este posibil să aveți sau nu următoarele fișiere în directorul rădăcină:

  • robots.txt – conține toate instrucțiunile pentru accesarea cu crawlere a roboților de căutare
  • Favicon.ico – fișierul favicon este uneori generat de cei care găzduiesc înșiși.

WordPress stochează toate descărcările, pluginurile și temele în folderul wp-content.

Să aruncăm o privire în folderul wp-content pentru a înțelege cum funcționează și ce puteți face aici.

  • teme
  • pluginuri
  • încărcări

WordPress stochează temele site-ului în folderul /wp-content/themes/. Puteți edita fișierul temă, cu toate acestea, în general, acest lucru nu este recomandat. După ce actualizați versiunea temei site-ului, toate modificările vor fi aplicate în timpul acestei actualizări. De aceea se recomandă personalizarea temei principale.

WordPress stochează toate pluginurile descărcate și instalate în folder /wp-content/plugins/. Nu este recomandat să editați fișierele plugin decât dacă ați creat singur pluginul pentru nevoile site-ului.

În multe instrucțiuni WordPress puteți vedea coduri care sunt inserate în site. Cel mai bine este să le adăugați în fișierul functions.php al temei copilului sau la un plugin specific site-ului.

WordPress stochează toate imaginile și încărcările media într-un folder /wp-content/uploads/. În mod implicit, acestea sunt stocate în foldere precum /an luna/. De fiecare dată când faceți backup pentru site-ul dvs., nu uitați de acest folder.

Puteți descărca copii ale nucleului, temelor și pluginurilor WordPress din sursele lor, dar dacă vă pierdeți folderul de descărcări, va fi dificil să recuperați fără o copie de rezervă.

Directorul wp-content stochează și alte foldere standard, cum ar fi:

  • limbi – acest folder stochează toate fișierele de limbă ale site-urilor care nu sunt în limba engleză.
  • upgrade este un folder temporar creat de WordPress la actualizarea unei versiuni a site-ului.

wp-content stochează, de asemenea, foldere care sunt create de pluginuri. De exemplu, captura de ecran de mai sus arată folderul galerie creat de plugin. Unele dintre aceste foldere pot conține fișiere foarte importante. De exemplu, folderul „galerie” stochează toate imaginile. Faceți întotdeauna copii de rezervă ale unor astfel de foldere pentru a evita pierderea datelor importante.

Alte foldere conțin fișiere pe care le puteți șterge în siguranță. De exemplu, W3 Total Cache sau WP Super Cache pot stoca fișiere stocate în cache în folderele lor.

Asta e tot. Sper că acest articol v-a ajutat să înțelegeți structura fișierelor WordPress.

Nu uitați să vă abonați la canalul meu YouTube, găsiți-mă pe VKontakte și Twitter.

Bună seara, prieteni și tovarăși!

Pregăteam un articol pentru publicare pe un alt subiect, dar m-am confruntat cu faptul că modificările descrise au afectat din nou un fișier din folderul wp-includes. Permiteți-mi să vă reamintesc că în articol am editat deja fișierul din acest folder - /wp_includes/taxonomy.php. Apoi am fost confuz de acest moment și, din nou, am ajuns la asta. Prin urmare, înainte de a trece mai departe, am decis să îmi dau seama în sfârșit dacă este posibil să fac modificări fișierelor din folderul wp-includes?

Căutarea a dat un răspuns clar: NU POȚI edita fișierele din folderul wp-includes!

Fișierele de bază WordPress sunt localizate în wp-includes și în timpul unei actualizări pot fi actualizate sau șterse, în funcție de modificări, în următoarea versiune de WP.

Desigur, puteți face modificări la fișierele de sistem (codul este deschis), dar apoi aveți două opțiuni:

1. Vi se refuză definitiv orice actualizare WordPress. Nu este o opțiune foarte bună, deoarece sistemul evoluează constant, securitatea este îmbunătățită, erorile din versiunile anterioare sunt eliminate, funcționalitatea este extinsă etc.

2. Comiți toate modificările pe care le-ai făcut în fișierele kernel și, după actualizare, repeți aceste modificări din nou. Nici bine. Dacă nu scapi imediat de acest obicei prost de a edita fișierele de sistem, atunci se pot acumula o mulțime de modificări, iar repetarea lor de fiecare dată este o activitate suplimentară și nu foarte interesantă care te poate conduce la prima opțiune - refuzul actualizărilor. Și apoi, chiar dacă nu ești prea leneș să faci modificările kernelului de fiecare dată, după următoarea actualizare se poate întâmpla ca codul tău pur și simplu să nu se potrivească în noul kernel, din cauza unor modificări globale.

Concluzie - trebuie să renunți odată pentru totdeauna la acest obicei prost!

Cum? Crește-ți cunoștințele despre WordPress. Sistemul este proiectat în așa fel încât să puteți găsi întotdeauna o opțiune pentru modificări fără a interfera cu nucleul.

Cea mai ușoară opțiune pentru a rezolva o problemă existentă este găsirea unui plugin cu funcționalitatea necesară. Și din moment ce există un plugin, același lucru se poate face și fără un plugin.

function my_category_order($orderby, $args) ( if($args["orderby"] == "sort") return "t.sort"; else return $orderby; ) add_filter("get_terms_orderby", "my_category_order", 10, 2);

function my_category_order($orderby, $args)

if ($ args [ "orderby" ] == "sortare" )

returnează „t.sort”;

altfel

return $orderby ;

add_filter ("get_terms_orderby" , "my_category_order" , 10 , 2 ) ;

Funcția get_terms_orderby trece câmpul pentru condiția ORDER BY a unei interogări sql. Și am adăugat cod suplimentar la această funcție, care include câmpul nostru de sortare – sort .

La punctele 1 și 3, totul rămâne neschimbat și, astfel, am implementat sortarea personalizată a categoriilor fără a folosi un plugin. Dar acum codul nostru nu se teme de actualizările WordPress. Sortarea va funcționa pentru șablonul curent dacă doriți să-l mutați într-un alt șablon, trebuie să repetați pașii 2 și 3 pentru o temă nouă.

Astfel, în majoritatea cazurilor, puteți evita să faceți modificări la fișierele din folderul wp-includes.

Sper că veți urma exemplul meu și veți opri editarea fișierelor de bază WordPress. Într-adevăr, aceasta este o practică foarte proastă, mai ales când nu o faci pentru tine, ci îndeplinești ordinul altcuiva. O persoană care nu bănuiește va actualiza WordPress și va pierde ceva util pentru care a plătit și s-ar putea să nu-și dea seama nici măcar de o astfel de „prostie”. El va reveni la versiunea veche, va refuza actualizările și va transmite altora experiența sa negativă.

Succes la invatarea WordPress! Protejează-te pe tine și pe clienții tăi de stres! =)