ປ່ຽນເສັ້ນທາງ WordPress ໃນ Header
ໄດ້ ຕົວຊີ້ທິດທາງການປ່ຽນເສັ້ນທາງ ສ້າງຂື້ນມາ ສຳ ລັບ WordPress ແມ່ນວິທີການຈັດການແລະຈັດການການປ່ຽນເສັ້ນທາງທີ່ດີເລີດ. ຂ້ອຍໃຊ້ມັນຢູ່ໃນເວບໄຊທ໌ນີ້ແລະໄດ້ຈັດກຸ່ມການປ່ຽນເສັ້ນທາງຂອງຂ້ອຍ ສຳ ລັບຂໍ້ຄວາມທີ່ອັບເດດ, ການເຊື່ອມໂຍງເຂົ້າກັນ, ການດາວໂຫລດ, ແລະອື່ນໆ.
ເຖິງຢ່າງໃດກໍ່ຕາມ, ຂ້ອຍມີບັນຫາທີ່ເປັນເອກະລັກສະເພາະບ່ອນທີ່ຂ້ອຍມີໂປແກຼມຕົວແທນດ້ານການຕັ້ງຄ່າ ສຳ ລັບລູກຄ້າທີ່ WordPress ກຳ ລັງແລ່ນຢູ່ໃນເສັ້ນທາງ…ແຕ່ບໍ່ແມ່ນຮາກຂອງເວັບໄຊທ໌້. ເວັບໄຊທ໌ຕົ້ນຕໍແມ່ນແລ່ນຢູ່ IIS ໃນ Azure. 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;
}
}
ພວກເຮົາບໍ່ໄດ້ລົບກວນການເຮັດວຽກໃນ functions.php ພຽງແຕ່ວ່າມັນຈະມີຜົນກະທົບຕໍ່ເອກະສານ header ເທົ່ານັ້ນ. ຫຼັງຈາກນັ້ນ, ພາຍໃນເອກະສານ 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 ເພື່ອໃຫ້ເຄື່ອງຈັກຊອກຫາເຄົາລົບມັນ.