Dmitry86 Posted August 16, 2019 Report Share Posted August 16, 2019 (edited) Ребят, возникла такая задача. Есть бренд, все страницы которого (карточки товаров, страницы категория+бренд и сама страница бренда) нужно скрыть от индексирования поисковыми системами. Для этого в базу для брендов было добавлено поле noindex и сделан соответсвующий чекбокс в админке. Если в админке у бренда поле чекнуто - то на каждой странице (карточка, категория+бренд и станица бренда) появляется соответствующий мета-тег <meta name="robots" content="noindex">. Сразу поясню, что через robots.txt делать не захотел, уж больно много туда урлов прописывать пришлось бы. Яндекс скушал нормально и страницы начали уходить из индекса, а вот Гугл начал ругаться: "Страница, связанная с отправленным URL, содержит тег noindex". Стало быть надо убирать эти страницы из sitemap.xml, который мы скормили Гуглу. Страницу бренда и категория+бренд я сделал, а вот с карточками товаров не получается разобраться, прошу помощи. По сути вопрос такой: если в бренде чекнуто "Не индексировать" - то товары этого бренда в sitemap не выводятся. // Товары $simpla->db->query("SELECT url FROM __products WHERE visible=1"); foreach($simpla->db->results() as $p) { $url = $simpla->config->root_url.'/products/'.esc($p->url); print "\t<url>"."\n"; print "\t\t<loc>$url</loc>"."\n"; print "\t</url>"."\n"; }Заранее благодарю. Edited August 16, 2019 by Dmitry86 Quote Link to post Share on other sites
chocolate_moles Posted August 16, 2019 Report Share Posted August 16, 2019 // Товары $simpla->db->query("SELECT url FROM __products WHERE visible=1"); Заранее благодарю. Как-то так $simpla->db->query(" SELECT p.url FROM __products p LEFT JOIN __brands b ON b.id = p.brand_id WHERE p.visible = 1 AND (b.noindex != 0 OR p.brand_id = 0) "); Quote Link to post Share on other sites
Dmitry86 Posted August 16, 2019 Author Report Share Posted August 16, 2019 Как-то так $simpla->db->query(" SELECT p.url FROM __products p LEFT JOIN __brands b ON b.id = p.brand_id WHERE p.visible = 1 AND (b.noindex != 0 OR p.brand_id = 0) "); Спасибо, но не получилось( Всё равно показываются товары с этого бренда. Кэш чистил, через инкогнито тоже пробовал. Quote Link to post Share on other sites
chocolate_moles Posted August 16, 2019 Report Share Posted August 16, 2019 Спасибо, но не получилось( Всё равно показываются товары с этого бренда. Кэш чистил, через инкогнито тоже пробовал. b.noindex != 1 Quote Link to post Share on other sites
Dmitry86 Posted August 16, 2019 Author Report Share Posted August 16, 2019 b.noindex != 1 Супер, спасибо, теперь всё работает! Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.