Վերահղեք WordPress- ը վերնագրում

WordPress վերնագրի վերահղում

The վերահղման plugin WordPress- ի համար կառուցվածը վերահղումները կազմակերպելու և ղեկավարելու ֆանտաստիկ միջոց է: Ես դա օգտագործում եմ այս կայքում և կազմակերպել եմ իմ խմբերի վերահղումները նորացված հաղորդագրությունների, դուստր ձեռնարկությունների հղումների, ներբեռնումների և այլնի համար:

Այնուամենայնիվ, ես բախվեցի մի յուրահատուկ խնդրի, երբ ես ունեմ հակառակ վստահված անձ, որը ստեղծվել է հաճախորդի համար, որտեղ WordPress- ը վազում է ճանապարհի վրա… բայց ոչ կայքի արմատը: Առաջնային կայքը գործում է Azure- ի IIS- ով: IIS- ը կարող է կառավարել վերահղումները այնպես, ինչպես ցանկացած վեբ սերվեր կարող է, բայց խնդիրն այն է, որ այս հաճախորդին անհրաժեշտ լինի վերափոխման կառավարումը ներդնել իրենց զարգացման գործընթացում, և նրանք արդեն զբաղված են:

Խնդիրն այն է, որ տիպիկ .htaccess ոճի վերահղումը հնարավորություն չէ ... մենք ստիպված ենք իրականում գրել վերահղումները PHP- ում: Որպես լուծում, մենք հարցումները ուղղում ենք դեպի WordPress- ը ՝ պարզելու, թե հին ուղիներով վերահղումներ կա՞ն:

Շրջանակներում header.php մեր երեխայի թեմայի ֆայլ, մենք ունենք գործառույթ.

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

Մենք չէինք անհանգստանում գործառույթը ֆունկցիաների մեջ դնել ֆունկցիաներ. Php պարզապես այն պատճառով, որ դա միայն ազդում էր վերնագրի ֆայլի վրա: Ապա, header.php ֆայլի մեջ մենք պարզապես ունենք բոլոր վերահղումների ցուցակը.

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

Այդ գործառույթի միջոցով կարող եք նաև նշել, թե վերահղման ինչ տեսակ կցանկանաք դնել վերնագրի հայցը, մենք այն պարզապես դեֆոլտ ենք դարձրել 301 վերահղման, որպեսզի որոնիչները պատվեն այն:

Այս կայքը օգտագործում է Akismet- ը սպամի նվազեցման համար: Իմացեք, թե ինչպես է ձեր տվյալները մշակվում.