il plugin ta 'direzzjoni ġdida mibni għal WordPress huwa mezz meraviljuż ta 'organizzazzjoni u ġestjoni ta' direzzjonijiet mill-ġdid. Jien nużaha f'dan is-sit u organizzajt il-gruppi tiegħi ta 'direzzjonijiet mill-ġdid għal postijiet aġġornati, links affiljati, downloads, eċċ.
Madankollu, sibt problema unika fejn għandi reverse proxy imwaqqaf għal klijent fejn WordPress qed jaħdem fi triq ... imma mhux l-għerq tas-sit. Is-sit primarju qed jaħdem fuq IIS f'Azure. L-IIS jistgħu jimmaniġġjaw ir-rindirizzazzjonijiet bħalma jista 'kwalunkwe web server, iżda l-problema hi li dan il-klijent ikollu bżonn ipoġġi l-immaniġġjar tad-direzzjonijiet mill-ġdid fil-proċess ta' żvilupp tagħhom - u diġà huma okkupati.
Il-kwistjoni hija li direzzjoni mill-ġdid tipika ta 'stil .htaccess mhijiex possibbiltà ... irridu fil-fatt niktbu r-direzzjonijiet mill-ġdid fil-PHP. Bħala soluzzjoni, inwasslu t-talbiet lil WordPress biex nidentifikaw jekk hemmx xi direzzjonijiet mill-ġdid fuq mogħdijiet qodma.
Fi ħdan il- header.php fajl tat-tema tat-tfal tagħna, għandna funzjoni:
function my_redirect ($oldlink, $newlink, $redirecttype = 301) {
$olduri = $_SERVER['REQUEST_URI'];
if(strpos($olduri, $oldlink) !== false) {
$newuri = str_replace($oldlink, $newlink, $olduri);
wp_redirect( $newuri, $redirecttype );
exit;
}
}
Aħna ma niddejqux inpoġġu l-funzjoni f'functions.php sempliċement għax tkun qed tħalli impatt biss fuq il-header file. Imbagħad, fil-fajl header.php, sempliċement għandna lista tar-ridirezzjonijiet kollha:
my_redirect('lesson_plans', 'lesson-plan');
my_redirect('resources/lesson-plans/26351', 'lesson-plan/tints-and-shades');
my_redirect('about/about', 'about/company/');
B'dik il-funzjoni, tista 'wkoll tispeċifika għal liema tip ta' direzzjoni mill-ġdid tixtieq tissettja t-talba tal-intestatura, aħna sempliċement naqsuha għal direzzjoni ġdida 301 sabiex il-magni tat-tiftix jonorawha.