Ailgyfeirio WordPress yn y Pennawd

Ailgyfeirio Pennawd WordPress

Daeth ategyn ailgyfeirio mae adeiladu ar gyfer WordPress yn fodd gwych o drefnu a rheoli ailgyfeiriadau. Rwy'n ei ddefnyddio ar y wefan hon ac wedi trefnu fy grwpiau o ailgyfeiriadau ar gyfer swyddi wedi'u diweddaru, dolenni cyswllt, lawrlwythiadau, ac ati.

Fodd bynnag, fe wnes i redeg i broblem unigryw lle mae gen i ddirprwy gwrthdroi wedi'i sefydlu ar gyfer cleient lle mae WordPress yn rhedeg ar lwybr ... ond nid gwraidd y wefan. Mae'r prif safle yn rhedeg ar IIS yn Azure. Gall IIS reoli ailgyfeiriadau yn union fel y gall unrhyw weinydd gwe, ond y broblem yw y byddai angen i'r cleient hwn roi rheolaeth ailgyfeirio yn ei broses ddatblygu - ac maen nhw'n brysur yn barod.

Y broblem yw nad yw ailgyfeirio arddull nodweddiadol .htaccess yn bosibilrwydd ... mae'n rhaid i ni ysgrifennu'r ailgyfeiriadau yn PHP mewn gwirionedd. Fel ateb, rydym yn cyfeirio'r ceisiadau i WordPress i nodi a oes unrhyw ailgyfeiriadau ar hen lwybrau.

O fewn y header.php ffeil o'n thema plentyn, mae gennym swyddogaeth:

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

Ni wnaethom drafferthu rhoi'r swyddogaeth yn functions.php dim ond oherwydd y byddai'n effeithio ar y ffeil pennawd yn unig. Yna, yn y ffeil header.php, yn syml, mae gennym restr o'r holl ailgyfeiriadau:

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

Gyda'r swyddogaeth honno, gallwch hefyd nodi pa fath o ailgyfeirio yr hoffech chi osod y cais pennawd iddo, rydyn ni newydd ei ddiffygio i ailgyfeirio 301 fel y bydd y peiriannau chwilio yn ei anrhydeddu.

Beth ydych chi'n feddwl?

Mae'r wefan hon yn defnyddio Akismet i leihau sbam. Dysgwch sut mae eich data sylwadau yn cael ei brosesu.