WordPress pravila imaju i iznimke

wordpress apač

wordpress apačWordPress je napravio velik evolucijski korak naprijed u blogovskoj platformi, približivši ga punopravnom sustavu za upravljanje sadržajem sa praćenjem revizija, većom podrškom za prilagođene izbornike i - najzanimljivijom značajkom za mene - podrškom za više web lokacija s mapiranjem domena.

Ako niste narkoman sustava za upravljanje sadržajem, u redu je. Možete preskočiti prošlost ovog članka. Ali za svoje kolege tehno-geekove, head-codee i apache-dabblere, želim podijeliti nešto zanimljivo i nešto cool.

Više web mjesta je značajka koja vam omogućuje pokretanje bilo kojeg broja WordPress web stranica s jednom WordPress instalacijom. Ako administrirate više web lokacija, lijepo je jer možete instalirati odobrenu skupinu tema i dodataka i aktivirati ih za web lokacije svojih klijenata. Postoji nekoliko tehničkih prepreka za mapiranje vaših domena, ali postupak nije težak.

Jedno od problematičnih područja koje sam prepoznao je prilagođavanje teme. Budući da teme mogu biti dostupne na više web lokacija, sve prilagodbe teme učinit će i na svim drugim web mjestima koja koriste tu temu pri instalaciji s više web lokacija. Moj put oko toga je dupliciranje teme prije nego što započnem prilagođavanje i jasno imenovanje teme za klijentsku stranicu za koju je stiliziram.

Još jedno zanimljivo pitanje je što se događa u .htaccess datoteci na vašem Apache poslužitelju. WordPress mora prepisivati ​​staze na blogu po blogu, a to čini s pravilom prepisivanja i php datotekom.

WordPress koristi sljedeće pravilo prepisivanja:

RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-includes / ms-files.php? File = $ 2 [L]

U osnovi, sve što se nalazi u poddirektoriju mysite.com/files/directory prepisuje se na mysite.com/files/wp-includes/myblogfolderpath… i tu postaje zanimljivo. Što se događa ako na poslužitelju zapravo trebate imati datoteku mysite.com/files/myfolder/myimage.jpg? Dobijete pogrešku 404, to se i događa. Uključuje se pravilo prepisivanja Apache i mijenja put.

Doduše, možda nikada nećete naići na ovaj problem, ali jesam. Imao sam web mjesto koje je trebalo koristiti javascript widget s drugog web mjesta i trebalo je pronaći grafiku na mysite.com/files/Images/myfile. Budući da nije bilo načina za promjenu datoteke na web lokaciji domaćina, trebao sam pronaći način kako to učiniti na svom poslužitelju. Jednostavno je rješenje stvoriti uvjet prepisivanja koji čini iznimku za određene datoteke.

Evo rješenja:

RewriteCond% {REQUEST_URI}! /? Files / Image / file1.jpg $
RewriteCond% {REQUEST_URI}! /? Files / Image / file2.jpg $
RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-includes / ms-files.php? File = $ 2 [L]

Uvjeti prepisivanja moraju se postaviti prije pravila prepisivanja, inače ovaj trik neće uspjeti. Trebalo bi biti lako izmijeniti ovo stanje za svoje potrebe, ako naiđete na sličan problem. Rješenje mi je izvrsno funkcioniralo, dopuštajući mi da zamijenim prilagođenu grafiku umjesto manje poželjnog alt teksta koji nije odgovarao mom dizajnu. Nadam se da će i vama uspjeti.

Što vi mislite?

Ova web stranica koristi Akismet za smanjenje neželjene pošte. Saznajte kako se podaci vašeg komentara obrađuju.