Nukreipkite „WordPress“ antraštėje

„WordPress“ antraštės peradresavimas

Šis nukreipimo papildinys sukurta „WordPress“ yra puiki priemonė organizuoti ir valdyti peradresavimus. Aš naudoju ją šioje svetainėje ir organizavau savo peradresavimo grupes atnaujintiems įrašams, filialų nuorodoms, atsisiuntimams ir kt.

Tačiau aš susidūriau su unikalia problema, kai klientui, kuriam „WordPress“ veikia keliu, yra nustatytas atvirkštinis tarpinis serveris ... bet ne svetainės šaknis. Pagrindinė svetainė veikia IIS sistemoje „Azure“. IIS gali valdyti peradresavimus taip, kaip gali bet kuris žiniatinklio serveris, tačiau problema yra ta, kad šiam klientui reikės nukreipti valdymą į savo kūrimo procesą - ir jie jau užimti.

Klausimas yra tas, kad tipinis .htaccess stiliaus peradresavimas nėra galimybės ... mes turime iš tikrųjų parašyti peradresavimus PHP. Kaip sprendimą, mes nukreipiame užklausas į „WordPress“, kad nustatytume, ar senuose keliuose yra peradresavimų.

Per header.php mūsų vaiko temos failą, turime funkciją:

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;
	}
}

Mes nesivarginome įdėti funkciją į functions.php vien todėl, kad tai paveiks tik antraštės failą. Tada faile header.php tiesiog turime visų peradresavimų sąrašą:

my_redirect('lesson_plans', 'lesson-plan');
my_redirect('resources/lesson-plans/26351', 'lesson-plan/tints-and-shades');
my_redirect('about/about', 'about/company/');

Naudodamiesi šia funkcija, jūs taip pat galite nurodyti, kokio tipo peradresavimui norite nustatyti antraštės užklausą, mes tiesiog nustatėme 301 peradresavimą, kad paieškos sistemos tai gerbtų.

Ką manote?

Ši svetainė naudoja "Akismet", kad sumažintų šlamštą. Sužinokite, kaip apdorojamas jūsų komentaras.