ახალი დომენის რეგულარული გამოხატვის (Regex) გადამისამართებები WordPress– ში

Regex - რეგულარული გამონათქვამები

ბოლო რამდენიმე კვირის განმავლობაში, ჩვენ ვეხმარებოდით კლიენტს WordPress– ით კომპლექსური მიგრაციის განხორციელებაში. კლიენტს ჰყავდა ორი პროდუქტი, რაც ორივე გახდა პოპულარული იმ დონემდე, რომ მათ ბიზნესის, ბრენდინგისა და შინაარსის გაყოფა მოუწიათ ცალკე დომენებისთვის. ეს საკმაოდ წამოწყებაა!

მათი არსებული დომენის სტატუსი კვლავ რჩება, მაგრამ ახალ დომენს ექნება მთელი შინაარსი ამ პროდუქტის მიმართ… სურათებიდან, პოსტებიდან, შემთხვევების შესწავლიდან, ჩამოტვირთვებიდან, ფორმებიდან, ცოდნის ბაზიდან და ა.შ. არ გამოტოვებთ ერთ აქტივს.

მას შემდეგ, რაც ახალი საიტი შეგვექმნა და იმოქმედებდა, დადგა დრო, რომ ჩამრთველი გამოვიყენოთ და პირდაპირ ეთერში ვუშვათ. ეს იმას ნიშნავდა, რომ პირველადი საიტის ნებისმიერი URL, რომელიც ამ პროდუქტს ეკუთვნოდა, უნდა გადაეტანა ახალ დომენზე. ჩვენ შევინარჩუნეთ უმეტესობა საიტებზე, ამიტომ მთავარია გადამისამართებების სწორად დაყენება.

WordPress– ის მოდულების გადამისამართება

არსებობს ორი პოპულარული დანამატი, რომლებიც დიდ სამუშაოს ასრულებენ WordPress– ით გადამისამართებების მართვაში:

  • გადამისამართების - ალბათ საუკეთესო მოდული ბაზარზე, რეგულარული გამოხატვის შესაძლებლობებით და თუნდაც კატეგორიებით თქვენი გადამისამართებების მართვისთვის.
  • რანგის მათემატიკის SEO - ეს მსუბუქი SEO დანამატი სუფთა ჰაერს იღებს და ჩემს სიას ქმნის საუკეთესო WordPress დანამატები ბაზარზე. მას აქვს გადამისამართებები, როგორც შეთავაზების ნაწილი და გადადის გადამისამართების მონაცემებსაც, თუ მასში გადახვალთ.

თუ იყენებთ WordPress ჰოსტინგის მართულ ძრავას, როგორიცაა WPEngine, მათ აქვთ მოდული, რომ გაუმკლავდნენ გადამისამართებებს, სანამ ადამიანი თქვენს საიტზე მოხვდება… საკმაოდ ლამაზი თვისება, რომელსაც შეუძლია შეამციროს შეყოვნება და ზედნადები თქვენს ჰოსტინგზე.

და, რა თქმა უნდა, შეგიძლია ჩაწერეთ გადამისამართების წესები თქვენს .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

რა თქმა უნდა, რეგულარული გამონათქვამები ბევრად უფრო რთული შეიძლება გახდეს, ვიდრე ეს I

რას ფიქრობთ?

ეს საიტი იყენებს Akismet- ს, რათა შეამციროს სპამი. შეისწავლეთ თქვენი კომენტარის მონაცემები დამუშავებული.