Redirect marca Wordpress

Friday, 10 December, Year 2 d.Tr. | Author: Mircea Popescu

In principiu, si fara a intra in prea multe detalii, redirect 302 e rau, redirect 301 e bun. Chestia are de-a face cu idiosincraziile Google, si e luata de buna de o larga majoritate intre expertii pe probleme (aia autenticii, nu copchii cu pretentii de pe la noi - si apropo, cind zic "copchii cu pretentii" sa nu aveti impresia ca-i exclud pe penibilii a la Cristi Mezei, Gabriel Curcudel aka Krumel si altii de aceeasi teapa, ca nu-i exclud nici intr-un caz ci foarte specific ii includ, despre ei e vorba in primul rind, habar n-au sarmanii pe ce lume se afla cu ciocurile si palariutele lor cu tot).

Puteti avea insa surpriza sa constatati (cum tocmai ce-a constatat un amic si mi-a scris disperat) ca Awstats raporteaza ceva precum

HTTP Status codes Hits Percent Bandwidth

302 Moved temporarily (redirect) 48056 86.1 % 15.30 MB

301 Moved permanently (redirect) 6271 11.2 % 910.02 KB

500 Internal server Error 922 1.6 % 875.18 KB

404 Document Not Found 262 0.4 % 2.21 MB

206 Partial Content 247 0.4 % 2.03 MB

403 Forbidden 12 0 % 11.39 KB

In caz ca va ingrijoreaza abundenta de 302 (care de altfel nici nu si-ar prea avea locul, avind in vedere ca nu mutati de ici colo si inapoi continutul chiar in toata ziua), explicatia aparitiei acelor 302-uri e urmatoarea : wordpress foloseste propria functie de redirectare, wp_redirect, care se gaseste definita in wp-includes/pluggable.php

Definitia e facuta in termenii

function wp_redirect($location, $status = 302) {

ceea ce inseamna ca daca nu se specifica altfel la invocare, statutul redirectarii va fi 302. Lucrul nu este rau in sine, doar ca lenea programatorilor ulteriori, care nu se prea obosesc sa declare wp_redirect() corect, adica cu url si cod rezulta intr-o groaza de redirectari temporare acolo unde ele de fapt ar trebui sa fie permanente.

Solutia paleativa, in caz ca nu va gasiti dispusi sa cautati toate instantele in care se invoca wp_redirect si sa meditati daca e cazul de 301 sau 302 e sa modificati pur si simplu valoarea default, de la 302 la 301.

In marea, vasta si imensa majoritate a cazurilor aceasta operatie nu va avea nici un fel de efecte perverse, scutindu-va de problema de-a avea 80-90% din redirectari de soiul neiubit de Google. Totusi, in caz ca aplicati modificarea se recomanda sa tineti hardughia sub observatie citva timp, sa va asigurati ca nu s-a rupt nimic.

Exista bineinteles la dispozitie si solutia corecta, de-a citi tot codul si-al corecta dupa nevoi, dar am ca o presimtire ca n-o va aplica absolut nimeni.

PS. Exista si

function wp_safe_redirect($location, $status = 302) {

just for the record.

Category: Meta psihoza
Comments feed : RSS 2.0. Leave your own comment below, or send a trackback.
Add your cents! »
    If this is your first comment, it will wait to be approved. This usually takes a few hours. Subsequent comments are not delayed.