Как удалить variation_id с карты сайта ?

Не пойму зачем это значение включается в карту сайта и скармливается поисковикам если все равно эти страницы не канонические? Если запретить в роботсе то это гугл воспринимает как ошибку.
Я так понимаю вариации сделали а карту под вариации нет, есть ли возможность это как то исправить, где то прописать, что попадает в карту?

В модуле есть
%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5

модуль это хорошо … вопрос про штатную карту … имхо вопрос не попадания в нее вариаций должно быть по умолчанию. это можно расценивать как баг.

вероятно там нужно просто удалить кусок кода который делает запрос …

даже про модуль AБ юю мне не понятно зачем включать их в карту сайта если они не канонические, т е это буде ошибка на стороне поисковика. или как?

PS вырезал код , выключал в модуле предполагаемые вариации … все равно генерит

Поддерживаю. Нужно исключить вариации из карты сайта.

1 лайк

теперь осталось выяснить как … изменения в /google_sitemap/func.php результат не принесли, может у вас, что получится

Да, для сео они не имеют никакого веса. Наоборот роботам в сайтмап посылается большое количество дублей канонических, тем самым влияя на краулинговый бюджет, что не очень круто.

Тестировал на одном из своих проектов. Купил АБ, убрал вариации и перерегенил. В принципе можно расценивать как баг…или недоработка.

так этот адрес еще и с нижним подчеркиванием … по сути мусор который жестко прописан в карте и через роботс его нормально не закроешь. Что то мне подсказывает, что там простое решение типа поставить значение false. Но я все перепробовал до чего допетрил, результат не дало. разработчик будет реагировать 45 дней и то если заметит… конечно можно спровоцировать отписавшись с этим вопросом в теме СДЭК, но получить опять за это бан :slight_smile: … поэтому надежда на первопроходцев :slight_smile:

У товаров, не являющихся вариацией, в базе данных в поле parent_product_id стоит 0.
В модуле карты сайта в строки, отвечающие за отправку товаров в карту, нужно добавить второе условие, тогда ссылки на вариации туда попадать не будут.
Если что, пишите в личку, помогу.

если это не сложное решение, можно сделать информацию публичной написав тут, думаю многим пригодится.

1 лайк

Без проблем.

В файле /app/addons/google_sitemap/func.php найти строки

fn_set_progress('step_scale', db_get_field('SELECT COUNT(*) FROM ?:products WHERE status = ?s', ObjectStatuses::ACTIVE));

while ($params['pid'] = db_get_fields('SELECT product_id FROM ?:products WHERE status = ?s ORDER BY product_id ASC ?p', ObjectStatuses::ACTIVE, db_paginate($page, $products_per_page))) {

и заменить следующими:

fn_set_progress('step_scale', db_get_field('SELECT COUNT(*) FROM ?:products WHERE parent_product_id = 0 AND status = ?s', ObjectStatuses::ACTIVE));

while ($params['pid'] = db_get_fields('SELECT product_id FROM ?:products WHERE parent_product_id = 0 AND status = ?s ORDER BY product_id ASC ?p', ObjectStatuses::ACTIVE, db_paginate($page, $products_per_page))) {
2 лайка

Кто-то пробовал в итоге? Работает?

Я пробовал, работает.

1 лайк