Cum să înțelegeți de ce permalinkurile dvs. nu funcționează în WordPress

Publicat: 2021-12-27

Multe sarcini ale site-ului se concentrează pe optimizarea pentru motoarele de căutare (SEO), deoarece vă poate crește vizibilitatea și clasarea în căutare. O parte a strategiei dvs. de SEO ar trebui să se bazeze pe structurile dvs. URL, deși dacă permalinkurile dvs. nu funcționează în WordPress, veți avea dificultăți să vă deteriorați cifrele de trafic.

Este simplu să știi când ai un permalink rupt, dar ceea ce nu este atât de ușor de înțeles este cum să-l repari. De cele mai multe ori, va trebui să sari în fișierele de configurare a serverului și să faci câteva modificări. Cu toate acestea, o resetare rapidă din WordPress ar putea fi tot ce aveți nevoie.

În următoarele câteva secțiuni, vă vom arăta ce să faceți atunci când permalinkurile nu funcționează în WordPress. În primul rând, vom vorbi mai multe despre permalink-urile sparte și despre cum arată acestea.

Cum arată un Permalink spart în WordPress

Indiferent de serverul pe care îl utilizați sau de configurarea acestuia, permalink-urile sparte arată la fel. În majoritatea cazurilor, veți vedea că pagina dvs. de pornire este perfectă, în timp ce alte pagini arată o eroare 404:

Pagina WPKube 404.

Pentru unele cazuri specifice – de exemplu adrese URL legitime care altfel nu există în site – puteți redirecționa erorile 404 către pagina dvs. de pornire. Cu toate acestea, nu este o soluție permanentă în multe cazuri, deoarece veți avea adesea o problemă de bază care rămâne nedetectată.

În plus, dacă permalinkurile tale nu funcționează în WordPress, habar nu vei avea decât dacă îți navighezi pe site. S-ar putea ca prima ta idee despre o problemă să fie atunci când utilizatorii îți trimit o notificare. Acest lucru nu este bun pentru experiența utilizatorului (UX) și nici pentru reputația ta.

De ce permalinkurile tale nu funcționează în WordPress

Slug-urile și permalink-urile din WordPress sunt mai mult un aspect „setat și uitat” al site-ului tău. În timp ce puteți edita slug-uri post-cu-post, setați structuri globale de permalink după procesul inițial de instalare a WordPress. Practica tipică recomandată este să le lăsați să rămână după aceasta, deoarece vă poate afecta SEO.

Ca atare, permalinkurile sparte în WordPress sunt mai greu de reparat, deoarece nu veți fi implicat direct în spargerea lor. În schimb, există câteva alte căi de explorat:

  • Dacă instalați un plugin nou sau modificați setările celui vechi, puteți face o modificare indirectă a permalink-urilor dvs. Acest lucru este valabil mai ales pentru acele pluginuri care se conectează la fișierele de configurare a serverului.
  • Deși este o șansă mică, unele actualizări de bază, teme și pluginuri vă vor rupe permalinkurile. Acesta este unul dintre motivele pentru care veți dori să aveți o copie de rezervă curată și actuală (din care mai multe mai târziu).
  • Apropo de asta, dacă trebuie să utilizați backup-ul pentru a vă restaura site-ul, acest lucru vă poate sparge și structurile de permalink. Acest lucru este valabil și pentru migrarea site-ului dvs.

Cu toate acestea, există o cauză mai frecventă pentru care permalinkurile dvs. nu funcționează în WordPress: o editare manuală a fișierelor de configurare a serverului. Dacă decideți să modificați aceste fișiere, acest lucru provoacă același daune ca și un plugin aflat în conflict.

Indiferent de motivul erorii, veți dori să vă puneți la lucru la remedierea acesteia. Acum că știi cauzele, poți începe să sapi și să descoperi unde se află problema.

De ce veți avea nevoie pentru a vă repara permalink-urile WordPress defecte

Dacă nu ați făcut deja twigged, va trebui să sari în fișierele de bază ale serverului. Din această cauză, e bine să iei tot ce ai nevoie, gata de rock and roll. Iată lista de verificare a elementelor pe care veți dori să le aveți pregătite:

  • Acces administrativ la serverul dumneavoastră, pentru a lucra cu fișierele acestuia. În cele mai multe cazuri, acest lucru nu va avea nevoie de contribuția dvs. – mai ales dacă sunteți proprietarul site-ului.
  • Acreditările serverului dvs., în special detaliile de conectare. Le veți găsi în panoul de control al găzduirii sau pe un e-mail de la furnizorul dvs. Dacă nu puteți găsi acreditările, gazda dvs. va putea să vă spună unde sunt acestea.
  • Un client Secure File Transfer Protocol (SFTP), cum ar fi Cyberduck, FileZilla sau Transmit. Fiecare dintre acestea este mai mult decât capabil de simplă căutare a fișierelor pe serverul dvs.
  • Abilitățile de a utiliza SFTP fără a cauza probleme. Este aproape de la sine înțeles că veți dori să știți cum să utilizați SFTP pe tot parcursul acestui tutorial.
  • O copie de rezervă curată, actuală și completă a site-ului dvs. web și, eventual, a serverului. Dacă trebuie să restaurați din cauza erorilor persistente (sau introduse), backup-ul dvs. va deveni cel mai valoros fișier pe care îl dețineți.

Deși există instrumente opționale, cum ar fi un editor de text, acestea nu sunt necesare. Lista de mai sus va fi tot ce aveți nevoie pentru a vă remedia permalinkurile care nu funcționează în WordPress.

Cum să remediați legăturile permanente care nu funcționează în WordPress

Odată ce aveți toate instrumentele, abilitățile și serviciile de care aveți nevoie, vă puteți pune la lucru. În următoarele câteva minute, vă vom arăta cum să remediați permalinkurile care nu funcționează în WordPress în următoarele moduri:

  1. Vom reseta permalinkurile din tabloul de bord WordPress și durează câteva secunde.
  2. Veți verifica dacă există incompatibilități cu pluginurile dvs. care vă pot afecta permalinkurile.
  3. Pentru serverele Apache, vă vom arăta unde să căutați pentru a vă remedia problema legaturilor permanente.
  4. De asemenea, vă vom arăta același lucru pentru serverele Nginx, deoarece sunt la fel de (dacă nu mai) populare.

Până la sfârșitul articolului, veți avea cunoștințele necesare pentru a vă asigura că puteți remedia orice problemă legată de permalink-uri în continuare. Sunt multe de făcut, așa că vom începe cu WordPress însuși.

1. Resetați permalinkurile dvs. în WordPress

Speranța este că o resetare rapidă a permalink-urilor dvs. în tabloul de bord WordPress va rezolva orice probleme pe care le aveți. Ar trebui să dureze câteva secunde și, deoarece este o modalitate simplă de a vă remedia problema legaturilor permanente, vă recomandăm să faceți acest lucru mai întâi.

Pentru a începe, accesați pagina Setări > Permalink -uri din WordPress:

Pagina de permalinkuri WordPress.

Pentru cele mai multe instalări moderne de WordPress, veți avea structura de permalink pentru nume post . Cu toate acestea, deocamdată trebuie să o schimbăm temporar. Pentru a face acest lucru, bifați orice alt buton radio. Dacă doriți să fiți extrem de precauți în ceea ce privește menținerea intactă a structurii URL, poate doriți să selectați Structură personalizată și să utilizați eticheta /%postname%/ :

Adăugarea unei structuri personalizate de permalink.

Apoi, salvați modificările, reselectați structura inițială (în acest caz, Post name ), apoi salvați din nou modificările. Acest lucru ar trebui să declanșeze resetarea permalinkurilor, așa că verificați site-ul și dacă ați rezolvat problema.

2. Verificați dacă există conflicte și incompatibilități de plugin

Următoarea metodă de a vă remedia permalinkurile care nu funcționează în WordPress este o abordare mai simplă a unui pas popular pentru a rezolva multe probleme WordPress. Pluginurile tale (desigur) afectează nenumărate zone ale site-ului tău, atât de mult încât un plugin neconformist poate cauza probleme cu permalink-urile tale.

Abordarea standard în această etapă ar fi să vă conectați la server prin SFTP, dar în acest caz nu este nevoie. În schimb, mergeți la pagina Plugin-uri > Pluginuri instalate din WordPress:

Pagina de pluginuri din WordPress.

Pe acest ecran, bifați fiecare casetă de selectare pentru fiecare plugin - puteți utiliza caseta de selectare globală din partea de sus pentru a economisi timp - și alegeți Dezactivare din meniul derulant Acțiuni în bloc :

Opțiunea Dezactivare din meniul drop-down Acțiuni în bloc.

Acest lucru va dezactiva fiecare plugin, dar, sperăm, va rezolva și problema permalink-urilor care vă afectează site-ul.

Apoi, activați fiecare plugin pe rând până când descoperiți că permalink-urile dvs. nu mai funcționează. Odată ce ați găsit pluginul, dezactivați-l din nou și reveniți site-ul la modul în care era, fără pluginul ofensator.

În acest moment, aveți câteva opțiuni:

  • Ștergeți complet pluginul dacă nu mai aveți nevoie de el.
  • Găsiți o alternativă, începând cu directorul de pluginuri WordPress.
  • Contactați dezvoltatorul pentru a-i anunța și pentru a cere o remediere.

În orice caz, veți dori să păstrați pluginul dezactivat până când aveți o rezoluție, deoarece nu veți dori ca permalink-urile dvs. să rămână întrerupte.

3. Configurați serverul dvs. Apache

Deși nu sunt la fel de populare acum ca înainte, serverele Apache sunt încă o modalitate solidă de a vă găzdui site-ul web. În plus, sunt ușor de gestionat pentru utilizatorul obișnuit (ceea ce are dezavantaje, dar asta este pentru un alt articol).

Ca atare, haideți să aruncăm o privire la câteva sarcini pe care le puteți efectua pentru ca linkurile permanente WordPress să funcționeze din nou.

Lucrați cu fișierul dvs. .htaccess pentru ca linkurile dvs. permanente să funcționeze din nou

La fel ca comutarea diferitelor structuri de permalink în WordPress, puteți, de asemenea, să vă resetați fișierul .htaccess . Pentru cei care nu știu, acesta este un fișier de configurare care vă ajută serverul să își gestioneze conținutul. Îl puteți edita cu instrucțiuni noi, dar în acest caz, dorim să-l dezactivăm (sau cel puțin, să nu lăsăm serverul să-l folosească temporar).

Puteți edita fișierul .htaccess cu instrucțiuni noi, dar în acest caz, dorim să-l dezactivăm (sau cel puțin, să nu lăsăm serverul să-l folosească temporar).

Pentru aceasta, veți dori să vă conectați la server folosind acreditările pe care le-ați primit mai devreme și clientul SFTP ales. Odată ce intrați, veți dori să navigați la site-ul potrivit. Dacă este singurul de pe serverul tău, acest lucru nu ar trebui să fie prea greu. Deși, pentru mai multe site-uri, căutați ceva cu un nume specific.

Dacă nu puteți vedea numele site-ului dvs., este posibil ca acesta să fie instalarea principală pentru serverul dvs. În acest caz, căutați www , root , public_html sau ceva similar. Fișierele site-ului dvs. vor fi acolo.

Odată ce vă aflați în locul potrivit, căutați fișierul dvs. .htaccess . Ar trebui să fie în directorul de cel mai înalt nivel:

Fișierul .htaccess din Cyberduck.

Deși sunteți binevenit să faceți o copie de rezervă a acestui fișier, acesta va rămâne pe serverul dvs., dar sub un alt nume. Pentru a face acest lucru, faceți clic dreapta pe fișier și, din meniul contextual, găsiți opțiunea Redenumire (sau similară):

Redenumirea unui fișier în Cyberduck.

Acest lucru va face ca WordPress să sări peste fișierul .htaccess , ca și cum acesta nu ar exista. De aici, veți dori să vă resetați permalinkurile conform primului pas din ghidul nostru. Acest lucru va crea un fișier nou-nouț .htaccess pe serverul dvs. și, în ce punct, puteți testa dacă permalinkurile nu funcționează.

Dacă funcționează, ceva din fișierul dvs. .htaccess va fi cauza erorii dvs. de permalink. Poate doriți să efectuați niște lucrări de tăiere și lipire pentru a afla ce linii cauzează problema, dar pentru că aveți un fișier nou-nouț .htaccess gata de funcționare, este posibil să nu fie nevoie.

Adăugați regula AllowOverride la configurația Apache Fişier

Pentru acest sfat următor, va trebui să vă aflați în folderul rădăcină al serverului dvs. Acesta este cel mai înalt nivel pe care îl puteți accesa și fiți avertizat că unele gazde ar putea să nu vă permită să faceți acest lucru. Ca atare, dacă utilizați un server partajat, aceasta nu va fi o opțiune pentru dvs. Cu toate acestea, cei care administrează serverul sau folosesc o rețea privată virtuală (VPN) pot efectua următoarele.

Veți ști dacă sunteți în locul potrivit pentru că va exista un folder etc. În timp ce unele servere vor avea o cale și un fișier etc/httpd/httpd.conf , serverele Linux pot folosi etc/apache2/apache2.conf :

Un server care arată calea către un fișier de configurare Apache.

Veți dori să adăugați o regulă la fișierul apache2.conf care vă permite să suprascrieți anumite aspecte ale serverului pe bază de director. Nu vom intra în detaliile acestuia aici, deoarece nu trebuie să înțelegeți complexitățile. Cu toate acestea, veți dori să vă asigurați că faceți o copie de rezervă înainte de a încerca aceasta.

Înapoi în clientul SFTP, navigați la fișierul apache2.conf și deschideți-l în editorul de text. În interior, căutați următoarea suită de coduri:

 <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>

Veți dori să schimbați linia AllowOverride None în AllowOverride All . După ce ați salvat modificările, veți dori să verificați dacă permalinkurile funcționează. Dacă nu, poate fi necesar să reporniți serverul. Aceasta este o tehnică avansată care utilizează accesul Secure Shell (SSH). Acoperim acest lucru într-un alt articol de pe blog.

Când vă aflați pe server, introduceți sudo systemctl restart apache2 pentru al reporni. Din cauza complexității diferitelor gazde, veți dori să vorbiți cu ei dacă întâmpinați probleme. Multe gazde au o modalitate personalizată de a vă accesa serverul și veți dori să găsiți cea mai optimă abordare.

4. Configurați serverul dvs. Nginx

Nginx este o mașină de curse super-slick în comparație cu Hot Rod-ul lui Apache. Ca atare, are o mulțime de fani și o cotă de piață mare în comparație cu concurența.

Dezavantajul aici este că găsirea fișierelor de care aveți nevoie este mai dificilă decât alte tipuri de server. Totuși, este posibil, așa că vă vom arăta cum să vă remediați permalinkurile care nu funcționează în serverele Nginx.

Găsiți fișierul dvs. de configurare Nginx

În primul rând, trebuie să găsiți fișierul de configurare potrivit. Poate fi necesar să vă consultați gazda pentru locația exactă pe serverul dvs. aici. Pentru noi, fișierul se află în directorul etc/nginx/site-enabled/ , dar al tău ar putea fi diferit.

Odată ce sunteți înăuntru, căutați un fișier numit default.conf , sau unul numit după site-ul dvs. – din nou, consultați-vă gazda dacă este necesar. Fișierele de configurare Nginx folosesc blocuri de cod pentru a defini reguli diferite și veți ști dacă fișierul este corect, deoarece va exista un bloc care începe cu server { .

Când găsiți acest bloc, îl puteți modifica în funcție de faptul dacă site-ul dvs. se află în rădăcină sau într-un subdirector.

Modificați fișierul dvs. de configurare Nginx

Cu fișierul default.conf deschis și cursorul care se află în jurul blocului de server , căutați un alt bloc indentat, de data aceasta pentru location / . Înăuntru, adăugați următoarele:

try_files $uri $uri/ /index.php?$args;

Blocul complet ar trebui să fie similar cu următorul:

 location / try_files $uri $uri/ /index.php?$args;

Acest lucru se va aplica numai dacă site-ul dvs. se află în directorul rădăcină al serverului dvs. Dacă site-ul dvs. se află într-un subdirector – poate că este unul dintre multele site-uri – veți dori să indicați locația către acel subdirector:

 location /subdirectort/ try_files $uri $uri/ /subdirectory/index.php?$args;

Când salvați modificările, reporniți serverul folosind sudo systemctl reload nginx . Ca și în cazul instrucțiunilor Apache, este posibil să nu puteți face acest lucru, caz în care discutați cu gazda și cereți-i să vă ajute.

Încheierea

Permalinkurile dvs. reprezintă modalitatea care poate fi citită de om de a accesa postările și paginile de pe site-ul dvs. web. Dacă merg prost, consecințele ar putea aduce site-ul dvs. în genunchi. Destul de des, primul pe care îl veți ști despre permalink-urile dvs. care nu funcționează în WordPress este numărul mare de erori 404 pe care le vor primi utilizatorii dvs.

Pentru a o remedia, cel mai bun scenariu va fi să vă resetați permalinkurile în WordPress. Deși, în multe alte cazuri, va trebui să vă deschideți serverul și să ștergeți (sau să modificați în alt mod) fișiere pentru ca lucrurile să funcționeze din nou. Această postare ar trebui să ofere abilitățile și fluxurile de lucru de care aveți nevoie pentru a îndrepta nava și a continua navigația.

Permalinkurile tale nu funcționează în WordPress cu ceva cu care te-ai confruntat înainte sau cu ceva pe care îl experimentezi chiar acum? Împărtășește-ți situațiile și orice sfat de remediere, în secțiunea de comentarii de mai jos!