PrestaShop Як перанакіраваць прадукты без страты SEO і пазбягаць памылак 404.
- Што такое перанакіраванне?
- Чаму перанакіраванне важна?
- Як адключыць прадукты ў PrestaShop.
- Дэактываваць прадукты без перанакіравання (Памылка 404).
- Дэактываваць прадукты з перанакіраваннем (301 ці 302).
- Як перанакіраваць прадукты без страты SEO і пазбягаць 404 памылак.
[Усяго: 3 Сярэдняя: 5/5]
PrestaShop - выдатны інструмент для стварэння функцыянальных інтэрнэт-крам, якія служаць мэтам крамы. Гэта значыць прадаваць. Падумайце пра функцыянальнасць вашага крамы і, магчыма, PrestaShop, альбо ён ужо быў рэалізаваны, альбо ўжо распрацаваны модулі, так што вы можаце рэалізаваць яго бясплатна ці па самых сціплых цэнах. З іншага боку, дакладна таксама, што часам распрацоўшчыкі PrestaShop крыху каталіся на каньках, асабліва ў дачыненні да SEO. Гэта, напрыклад, датычнасць прадуктаў і перанакіраванні, якія яны ствараюць. Але мы ідзем па частках.
Што такое перанакіраванне?
Уявіце, што ваш партнёр заўсёды пакідае абутак у сярэдзіне пакоя. Аднойчы вы падбіраеце іх і пакідаеце іх акуратным у стойцы для абутку. Вынік: калі ваш партнёр вернецца і шукае туфлі, вы іх не знойдзеце, бо вы яго не папярэдзілі. Пераведзены ў Інтэрнэт пошук вашага партнёра (які, як і Google, ведае ўсё), дасць "404 старонку памылкі не знойдзена", таму што вы няправільна перанакіравалі пошук . Мы робім перанакіраванне, калі мы хочам паказаць у пошукавыя сістэмы, што мы змянілі, перамясцілі або выдалілі URL. У залежнасці ад змен, якія мы хочам мець зносіны, існуюць розныя тыпы перанакіраванняў:
- Перанакіраванне 301 (пастаянны). Адпраўце ўвесь трафік, прызначаны для URL-адраса URL-адраса B, а таксама паўнамоцтваў SEO.
- Перанакіраванне 302 (часовае) . Напрыклад, калі мы хочам паказаць, што наш сайт будзе недаступны.
Чаму перанакіраванне важна?
Перанакіраванні маюць фундаментальнае значэнне для пазіцыянавання. Калі мы няправільна паказваем перанакіраванні, мы рызыкуем страціць пазіцыянаванне і аўтарытэт нашага інтэрнэт-крамы.
Як адключыць прадукты ў PrestaShop.
Скажам, сезон скончыўся, і што адзенне будзе спынена, што ваш пастаўшчык пілотныя гадзіны яна больш не вырабляе гэтую мадэль ці ў вашым класічным краме для галення ў вас больш няма запасаў для галення. У гэтых выпадках вы можаце прадухіліць дэактывацыю прадуктаў, каб выдаліць іх з каталога і выдаліць іх з продажу. Для гэтага проста перайдзіце на ўкладку прадукту на ўкладцы "Інфармацыя" і адключыце прадукт (Актываваны: не).
Дэактываваць прадукты без перанакіравання (Памылка 404).
Праблема з PrestaShop заключаецца ў тым, што пры дэактывацыі прадукту па змаўчанні ён не прызначае перанакіравання, ствараючы 404 памылку "старонкі не знойдзена" . Важна ведаць, што 404 памылкі пашкоджваюць пазіцыянаванне нашага сайта. Так што будзьце асцярожныя пры выключэнні прадуктаў.
Пры дэактывацыі прадукту PrestaShop па змаўчанні не прызначае перанакіраванне, што выклікае памылку 404 "Старонка не знойдзена".
Замест таго, каб пераходзіць прадукт да прадукту, існуе таксама магчымасць масавага дэактывацыі прадуктаў з дапамогай опцыі "згрупаваныя дзеянні" з каталога адміністратара>, што дазваляе масава ўключаць альбо адключаць раней выбраныя прадукты. Але вока! Мы будзем ствараць паток 404 памылкі.
Дэактываваць прадукты з перанакіраваннем (301 ці 302).
Меркаванні, па якіх найлепшы спосаб кіраваць дэактываванымі прадуктамі, мноства і разнастайныя і далі б гаварыць доўга і цяжка. У любым выпадку і пры агульным характары, калі прадукт дэактываваны, звычайна мэтазгодна перанакіраваць на аналагічны прадукт . Для гэтага мы выбіраем опцыю "Пастаяннае перанакіраванне (301)" і ў полі "Спадарожны прадукт" мы паказваем падобны прадукт.
PrestaShop Як перанакіраваць прадукты без страты SEO і пазбягаць памылак 404.
Што рабіць, калі падобнага прадукту няма? У гэтым выпадку логіка сказала б перанакіраваць на бліжэйшую вышэйшую катэгорыю. І гэта, калі мы не знаходзім іншага абмежавання PrestaShop, паколькі ён не дазваляе перанакіраваць дэактываваны прадукт на катэгорыю прыналежнасці . Каб вырашыць гэтую невялікую неадпаведнасць, неабходна звярнуцца да перамены кантролера.
Як перанакіраваць прадукты без страты SEO і пазбягаць 404 памылак.
Спачатку трэба перанакіраваць дэактываваныя прадукты ў катэгорыю сяброўства . Гэта змяненне ўмешваецца ў кантролер прадукту і тлумачыцца вельмі добра ў Форум PrestaShop , Што ён робіць, гэта перанакіраваць дэактываваныя прадукты ў бліжэйшую вышэйшую катэгорыю.
перавызначыць \ кантролеры \ front \ ProductController.php
Змены, прапанаваныя на форуме, перанакіруюць прадукцыю на катэгорыю прыналежнасцяў:
switch ($ this-> product-> redirect_type) {выпадак '301': header ('HTTP / 1.1 301 Перамяшчаецца пастаянна'); // загаловак ('Location:' $ this-> context-> link-> getProductLink ($ this-> product-> id_product_redirected)); header ("Location:". $ this-> context-> link-> getCategoryLink ($ this-> product-> id_category_default)); выхад; перапынак; справа '302': загаловак ('HTTP / 1.1 302 Пераведзены часова'); header ('Cache-Control: не-кэш'); // загаловак ('Location:' $ this-> context-> link-> getProductLink ($ this-> product-> id_product_redirected)); header ("Location:". $ this-> context-> link-> getCategoryLink ($ this-> product-> id_category_default)); выхад; перапынак; справа '404': па змаўчанні: загаловак ('HTTP / 1.1 404 Не знойдзена'); загаловак ('Статус: 404 Не знойдзена'); $ this-> error [] = Tools :: displayError ('Гэты прадукт больш не даступны.'); перапынак; }
У ідэале, што не абмяркоўваецца на форуме, гэта ўносіць змены шляхам пераазначэння , т. Е. Перазапісаць драйвер, каб не ставіць пад пагрозу змены ў будучых абнаўленнях. Для гэтага проста скапіруйце файл у наступную тэчку і ўнесце змены:
перавызначыць \ кантролеры \ front \ ProductController.php
Зменіце перанакіраванне прадукцыі на катэгорыю прыналежнасці і перанакіравання па змаўчанні тыпу 301:
if (! $ this-> product-> id_product_redirected || $ this-> product-> id_product_redirected == $ this-> product-> id) {/ ******* Калі дэактываваць прадукт, перанакіраванне па змаўчанні: 301 ********* / // $ this-> product-> redirect_type = '404'; $ this-> product-> redirect_type = '301'; } switch ($ this-> product-> redirect_type) {справа '301': header ('HTTP / 1.1 301 перамяшчаецца пастаянна'); // загаловак ('Location:' $ this-> context-> link-> getProductLink ($ this-> product-> id_product_redirected)); header ("Location:". $ this-> context-> link-> getCategoryLink ($ this-> product-> id_category_default)); выхад; перапынак; справа '302': загаловак ('HTTP / 1.1 302 Пераведзены часова'); header ('Cache-Control: не-кэш'); // загаловак ('Location:' $ this-> context-> link-> getProductLink ($ this-> product-> id_product_redirected)); header ("Location:". $ this-> context-> link-> getCategoryLink ($ this-> product-> id_category_default)); выхад; перапынак; справа '404': па змаўчанні: загаловак ('HTTP / 1.1 404 Не знойдзена'); загаловак ('Статус: 404 Не знойдзена'); $ this-> error [] = Tools :: displayError ('Гэты прадукт больш не даступны.'); перапынак; }
Пасля ўнясення змяненняў рэкамендуецца выдаліць кэш PrestaShop, каб змены ўступілі ў сілу. Нарэшце, важна пераканацца, што перанакіраванні, якія мы толькі што стварылі, працуюць правільна. Для гэтага мы можам выкарыстоўваць бясплатны інструмент Перанакіраванне праверкі , Мы ўводзім URL, які мы змянілі, выдалілі або перамясцілі, і правяраем, што створаныя перанакіраванні працуюць.
Праверка перанакіравання паказвае, што яна мае тып 301.
Што такое перанакіраванне?Чаму перанакіраванне важна?
Што такое перанакіраванне?
Чаму перанакіраванне важна?