Նոր տիրույթի կանոնավոր արտահայտման (Regex) վերահղումներ WordPress- ում

Regex - կանոնավոր արտահայտություններ

Վերջին մի քանի շաբաթների ընթացքում մենք օգնում էինք հաճախորդին WordPress- ի միջոցով կատարել բարդ միգրացիա: Հաճախորդն ուներ երկու ապրանքատեսակ, երկուսն էլ դարձել են հանրահայտ այն աստիճան, որ ստիպված են եղել բաժանել բիզնեսը, բրենդինգը և բովանդակությունը ՝ առանձնացնելով տիրույթներ: Դա բավականին ձեռնարկում է:

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

Երբ մենք նոր կայքը տեղադրեինք և գործարկեինք, արդեն եկել էր անջատիչը քաշելու և այն գործի դնելու ժամանակը: Դա նշանակում էր, որ այս արտադրանքին պատկանող առաջնային կայքից ստացված ցանկացած URL- ներ պետք է վերահասցեագրվեն դեպի նոր տիրույթ: Մենք ուղիների մեծ մասը համահունչ էինք պահում կայքերի միջև, ուստի առանցքայինը վերահղումները պատշաճ կերպով կարգավորելն էր:

Վերահղման ներդիրները WordPress- ում

Կան երկու հանրաճանաչ կոնտակտներ, որոնք մեծ աշխատանք են կատարում WordPress- ի միջոցով վերահղումները կառավարելու համար.

  • Վերաուղղորդում - երևի շուկայում լավագույն փլագինն է ՝ կանոնավոր արտահայտման հնարավորություններով և նույնիսկ ձեր վերահղումները կառավարելու համար նույնիսկ կատեգորիաներով:
  • Rankmath SEO - այս թեթև SEO SEO պլագինը մաքուր օդ է շնչում և կազմում է իմ ցուցակը Լավագույն WordPress Plugins շուկայում: Այն իր առաջարկի մասում ունի վերահղումներ և նույնիսկ ներմուծելու է Վերահղման տվյալները, եթե տեղափոխվեք դրան:

Եթե ​​օգտագործում եք կառավարվող WordPress հոստինգի շարժիչ, ինչպիսին է WPEngine, նրանք ունեն վերահղումներ վարելու մոդուլ, մինչև որ անձը երբևէ հարվածի ձեր կայքին pretty բավականին գեղեցիկ հատկություն, որը կարող է նվազեցնել ձեր հոստինգի ուշացումը և գլխավերևը:

Եվ, իհարկե, կարող եք գրեք վերահղման կանոնները ձեր .htaccess ֆայլում ձեր WordPress սերվերի վրա… բայց ես խորհուրդ չէի տա: Ձեր կայքը անհասանելի դարձնելուց մեկ շարահյուսական սխալ կա:

Ինչպես ստեղծել Regex վերահղում

Վերոնշյալ օրինակում, որը կարող է թվալ, պարզ կլինի պարզապես ենթապանակից տիպային վերահղում կատարել դեպի նոր տիրույթ և ենթապանակ:

Source: /product-a/
Destination: https://newdomain.com/product-a/

Դրա հետ մեկտեղ խնդիր կա: Ի՞նչ կլինի, եթե դուք բաշխել եք հղումներ և արշավներ, որոնք ունեն քարոզչության հետևման կամ ուղղորդման հարցման տող: Այդ էջերը պատշաճ կերպով չեն վերահղվելու: Գուցե URL- ն է.

https://existingdomain.com/product-a/?utm_source=newsletter

Քանի որ դուք գրել եք ճշգրիտ համընկնում, այդ URL- ն ոչ մի տեղ չի վերահղվի: Այսպիսով, կարող է գայթակղվել այն սովորական արտահայտություն դարձնել և URL- ին ավելացնել վայրի քարտ:

Source: /product-a/(.*)
Destination: https://newdomain.com/product-a/

Դա բավականին լավ է, բայց դեռ մի քանի խնդիր կա: Նախ, այն պատրաստվում է համընկնել ցանկացած URL- ի հետ / արտադրանք-ա / դրանում և բոլորին վերահասցեագրել նույն նպատակակետը: Այսպիսով, այս բոլոր ուղիները կուղղորդվեն նույն նպատակակետին:

https://existingdomain.com/product-a/
https://existingdomain.com/help/product-a/
https://existingdomain.com/category/parent/product-a/

Կանոնավոր արտահայտությունները, չնայած, գեղեցիկ գործիք են: Նախ, կարող եք թարմացնել ձեր աղբյուրը ՝ ապահովելու համար, որ պանակի մակարդակը որոշվի:

Source: ^/product-a/(.*)
Destination: https://newdomain.com/product-a/

Դա կապահովի, որ միայն հիմնական պանակի մակարդակը ճիշտ կուղղվի: Հիմա երկրորդ խնդրի համար. Ինչպե՞ս կստանաք հարցման տողի տեղեկատվությունը, որը գրված է նոր կայքում, եթե ձեր վերահղումը չի պարունակում այն: Դե, կանոնավոր արտահայտությունները նույնպես դրա համար հիանալի լուծում ունեն.

Source: ^/product-a/(.*)
Destination: https://newdomain.com/product-a/$1

Վայրի քարտի մասին տեղեկատվությունն իրականում որսվում և կցվում է նպատակակետին ՝ օգտագործելով փոփոխականը: Այսպիսով

https://existingdomain.com/product-a/?utm_source=newsletter

Պատշաճ կերպով կուղղորդվի հետևյալի ՝

https://newdomain.com/product-a/?utm_source=newsletter

Հիշեք, որ wildcard- ը հնարավորություն կտա ցանկացած ենթապանակ վերահասցեագրվել նաև, այնպես որ սա նաև միացված կլինի.

https://existingdomain.com/product-a/features/?utm_source=newsletter

Կուղղորդվի դեպի ՝

https://newdomain.com/product-a/features/?utm_source=newsletter

Իհարկե, կանոնավոր արտահայտությունները կարող են դրանից շատ ավելի բարդ լինել ... բայց ես պարզապես ուզում էի արագ նմուշ ներկայացնել, թե ինչպես ստեղծել wildcard regex- ի վերահղում, որն ամեն ինչ մաքուր կերպով փոխանցում է նոր տիրույթ:

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