Автор Тема: Дубли страниц. Какой вариант лучше для устранения?  (Прочитано 3888 раз)

23 Август 2012, 19:08:09
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В гуглвебмастер обнаружил что он показывает повторяющиеся заголовки (теги title):

/lang-ru/korziny/179-korz-rozovaja.html
/korziny/179-korz-rozovaja.html

/20-tort-iz-igrushek
/20-tort-iz-igrushek?orderby=name&orderway=desc

/lang-en/5-mashyna-igr?n=10&orderby=quantity&orderway=desc&p=4
/lang-en/5-mashyna-igr?n=9&p=3&orderby=name&orderway=desc
/lang-en/5-mashyna-igr?orderby=price&orderway=desc&p=3
/lang-en/5-mashyna-igr?orderby=quantity&orderway=desc&p=4
/lang-en/5-mashyna-igr?p=3&orderby=name&orderway=desc

У меня 2 вопроса:
1) Как лучше будет избавиться от дублей: редирект или закрыть в robots.txt?
Редирект с /lang-ru/korziny/179-korz-rozovaja.html на /korziny/179-korz-rozovaja.html, чтобы избавится от /lang-ru. Или лучше все же закрыть в robots.txt, чтобы не индексировались страници которые начинаются с /lang-ru/ и /lang-en/ ?

2) Стоит ли закрывать от индексации фильтры и как правильно написать правило?
Сейчас у меня есть в robots.txt:
Disallow: /*orderby=
Disallow: /*orderway=
Disallow: /*tag=
Disallow: /*id_currency=
Disallow: /*search_query=
Disallow: /*id_lang=
Disallow: /*back=
Disallow: /*utm_source=
Disallow: /*utm_medium=
Disallow: /*utm_campaign=
Disallow: /*n=

Но видимо что-то неправильно написал, если в индексе страницы фильтров....
23 Август 2012, 20:16:28
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 885
  • Репутация: +206/-0
    • Просмотр профиля
Лучше закрыть через robots.txt.
У меня там так
# GoogleBot specific
User-agent: Googlebot
Disallow: /*orderby=
Disallow: /*orderway=
Disallow: /*tag=
Disallow: /*id_currency=
Disallow: /*search_query=
Disallow: /*id_lang=
Disallow: /*back=
Disallow: /*utm_source=
Disallow: /*utm_medium=
Disallow: /*utm_campaign=
Disallow: /*n=
# All bots
User-agent: *
# Directories
Disallow: /classes/
Disallow: /config/
Disallow: /download/
Disallow: /mails/
Disallow: /modules/
Disallow: /translations/
Disallow: /tools/
# Files
Disallow: /addresses.php
Disallow: /address.php
Disallow: /authentication.php
Disallow: /cart.php
Disallow: /discount.php
Disallow: /footer.php
Disallow: /get-file.php
Disallow: /header.php
Disallow: /history.php
Disallow: /identity.php
Disallow: /images.inc.php
Disallow: /init.php
Disallow: /my-account.php
Disallow: /order.php
Disallow: /order-opc.php
Disallow: /order-slip.php
Disallow: /order-detail.php
Disallow: /order-follow.php
Disallow: /order-return.php
Disallow: /order-confirmation.php
Disallow: /pagination.php
Disallow: /password.php
Disallow: /pdf-invoice.php
Disallow: /pdf-order-return.php
Disallow: /pdf-order-slip.php
Disallow: /product-sort.php
Disallow: /search.php
Disallow: /statistics.php
Disallow: /attachment.php
Disallow: /guest-tracking.php
Disallow: /address
Disallow: /adresse
Disallow: /direccion
Disallow: /adresse
Disallow: /indirizzo
Disallow: /address
Disallow: /addresses
Disallow: /adresses
Disallow: /direcciones
Disallow: /adressen
Disallow: /indirizzi
Disallow: /addresses
Disallow: /authentication
Disallow: /authentification
Disallow: /autenticacion
Disallow: /authentifizierung
Disallow: /autenticazione
Disallow: /authentication
Disallow: /cart
Disallow: /panier
Disallow: /carro-de-la-compra
Disallow: /warenkorb
Disallow: /carrello
Disallow: /cart
Disallow: /discount
Disallow: /bons-de-reduction
Disallow: /descuento
Disallow: /discount
Disallow: /sconto
Disallow: /discount
Disallow: /guest-tracking
Disallow: /suivi-commande-invite
Disallow: /estado-pedido
Disallow: /auftragsverfolgung-gast
Disallow: /ospite-monitoraggio
Disallow: /guest-tracking
Disallow: /order-history
Disallow: /historique-des-commandes
Disallow: /historial-de-pedidos
Disallow: /bestellungsverlauf
Disallow: /storico-ordine
Disallow: /order-history
Disallow: /identity
Disallow: /identite
Disallow: /identidad
Disallow: /kennung
Disallow: /identita
Disallow: /identity
Disallow: /my-account
Disallow: /mon-compte
Disallow: /mi-cuenta
Disallow: /mein-Konto
Disallow: /il-mio-account
Disallow: /my-account
Disallow: /order
Disallow: /commande
Disallow: /carrito
Disallow: /bestellung
Disallow: /ordine
Disallow: /order
Disallow: /order-follow
Disallow: /details-de-la-commande
Disallow: /devolucion-de-productos
Disallow: /bestellungsverfolgung
Disallow: /seguito-ordine
Disallow: /order-follow
Disallow: /quick-order
Disallow: /commande-rapide
Disallow: /pedido-rapido
Disallow: /schnell-bestellung
Disallow: /ordine-veloce
Disallow: /quick-order
Disallow: /order-slip
Disallow: /avoirs
Disallow: /vales
Disallow: /bestellschein
Disallow: /nota-di-ordine
Disallow: /order-slip
Disallow: /password-recovery
Disallow: /mot-de-passe-oublie
Disallow: /contrasena-olvidado
Disallow: /kennwort-wiederherstellung
Disallow: /password-recupero
Disallow: /password-recovery
Disallow: /search
Disallow: /recherche
Disallow: /buscar
Disallow: /suche
Disallow: /cerca
Disallow: /search
# Sitemap
23 Август 2012, 20:27:37
Ответ #2
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У Вас так же:
Disallow: /*orderby=
Disallow: /*orderway=
Disallow: /*n=

Но в индексе все равно есть страници с фильтрами и постраничная навигация. Значит неправильно написано.
+ у вас ничего нет для
страниц /lang-ru/ и /lang-en/.

Вопрос остается открытым...
24 Август 2012, 09:41:11
Ответ #3
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 102503
  • Репутация: +34219/-0
    • Просмотр профиля
Замените
User-agent: GooglebotНа
User-agent: *В итоге должно получиться:
User-agent: *
Disallow: /*orderby=
Disallow: /*orderway=
Disallow: /*id_lang=
Цитировать
для страниц /lang-ru/ и /lang-en/.
Disallow: /*id_lang=
24 Август 2012, 09:47:48
Ответ #4
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У меня так и написано в роботсе:
User-agent: *Это у Руслана отдельно для гугла прописано.
У меня:
User-agent: *
User-agent: Yandex

У меня уже прописано в роботсе:

Disallow: /ru/search
Disallow: /*orderby=
Disallow: /*id_lang=
Disallow: /*n=

Но страницы все равно в индексе... В чем может быть причина? Около 2-х месяцев уже прописано.
24 Август 2012, 09:56:07
Ответ #5
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 102503
  • Репутация: +34219/-0
    • Просмотр профиля
Эти правила закрывают от индексации страницы фильтров и языков. Действуют для стандартоной версии prestashop 1.4. Не будут действовать если вы что-то меняли в образовании url.
24 Август 2012, 10:06:38
Ответ #6
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Можно и без robots.txt обойтись.
Запретить индексацию для отдельных страниц
if ( isset($_GET['orderby'])
     OR isset($_GET['orderway'])
     OR isset($_GET['n'])
     OR isset($_GET['id_lang']) ) {
                                                    $smarty->assign('nobots', 1); // Подстановка в шаблонах Smarty "noindex,follow" в метатеге Robots
}
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
24 Август 2012, 15:14:14
Ответ #7
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В образовании url ничего не менял. У меня версия движка 1.3.1.1, но думаю єто ни на что не влияет.

mAgency, спасибо за подсказку.

"в шаблонах Smarty" - обьясните "деревянному" о каких шаблонах идет речь?  Как я понимаю, указанный Вами код првоеряет url и если в нем присутствуют указанные слова, то добавляет на старницу  "noindex,follow" и роботы не должны индексировать такую страницу.

Вот только в какие шаблоны нужно вставить - не понял. Или достаточно в index.php? Заранее благодарен.
24 Август 2012, 15:28:22
Ответ #8
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Вот только в какие шаблоны нужно вставить - не понял. Или достаточно в index.php? Заранее благодарен.header.php - в этом файде переменные для метатегов.

Можно еще проще, только googlebot
В Google Webmaster Tools : Конфигурация -> Парамметры
Занести парам. которые нужно игнорировать:
orderway, orderby,id_lang...
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
24 Август 2012, 16:27:19
Ответ #9
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля