Ohjaa WordPress otsikossa
- uudelleenohjauslaajennus WordPressille rakennettu on loistava tapa järjestää ja hallita uudelleenohjauksia. Käytän sitä tällä sivustolla ja olen järjestänyt ryhmät uudelleenohjauksia päivitettyjä viestejä, tytäryhtiölinkkejä, latauksia jne. Varten
Törmäsin kuitenkin ainutlaatuiseen ongelmaan, jossa minulla on käänteinen välityspalvelin, joka on määritetty asiakkaalle, jossa WordPress on polulla… mutta ei sivuston juuri. Ensisijainen sivusto toimii IIS: ssä Azuressa. IIS voi hallita uudelleenohjauksia aivan kuten mikä tahansa verkkopalvelin, mutta ongelmana on, että tämän asiakkaan on otettava uudelleenohjauksen hallinta osaksi kehitysprosessiaan - ja he ovat jo kiireisiä.
Ongelmana on, että tyypillinen .htaccess -tyylin uudelleenohjaus ei ole mahdollista ... meidän on itse asiassa kirjoitettava uudelleenohjaukset PHP: hen. Ratkaisuna reititämme pyynnöt WordPressiin tunnistaaksemme, onko vanhoilla poluilla uudelleenohjauksia.
Sisällä header.php tiedosto lapsiteemastamme, meillä on toiminto:
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;
}
}
Emme vaivautuneet asettamaan toimintoa toimintoihin.php vain siksi, että se vaikuttaisi vain otsikkotiedostoon. Sitten header.php -tiedostossa meillä on yksinkertaisesti luettelo kaikista uudelleenohjauksista:
my_redirect('lesson_plans', 'lesson-plan');
my_redirect('resources/lesson-plans/26351', 'lesson-plan/tints-and-shades');
my_redirect('about/about', 'about/company/');
Tällä toiminnolla voit myös määrittää, minkä tyyppiselle uudelleenohjaukselle haluat asettaa otsikkopyynnön. Olemme juuri olettaneet sen 301 -uudelleenohjaukseksi, jotta hakukoneet kunnioittavat sitä.