Автор Тема: Блокировка Яндекс.Советника для интернет магазина на PrestaShop  (Прочитано 1669 раз)

19 Ноябрь 2016, 10:25:46
  • Пользователь
  • **
  • Сообщений: 81
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Кто то разбирался с CSP (Content Security Policy) только для Яндекс.Советника?
Я так понимаю изменения нужно вносить в Код файла /csp-report/report.php
Кто-то создавал правила только для блокировки Советника?
19 Ноябрь 2016, 14:21:46
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 1807
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Изменять нужно header.tpl, в этот файл вставить код javascript для блокировки Яндекс.Советника.
19 Ноябрь 2016, 15:13:07
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Яндек советник считывает инфу из DOM после загрузки всего JS кода на странице. Поэтому лучше код в footer.tpl добавлять, а не в header.tpl.
19 Ноябрь 2016, 16:24:37
Ответ #3
  • Пользователь
  • **
  • Сообщений: 81
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Яндек советник считывает инфу из DOM после загрузки всего JS кода на странице. Поэтому лучше код в footer.tpl добавлять, а не в header.tpl.

Спасибо за ответы. Кто-то делал блокировку только яндекс советника? Получалось? Есть рабочий код, и все таки куда получалось его вставлять footer или header?
19 Ноябрь 2016, 16:48:24
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 1807
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В файле header.tpl в head нужно добавить код
<script type="text/javascript">!function(){var e=function(){function e(e,t){r&&"#ssdebug"===r&&console.log(e,t||"")}function t(){}function n(t){var n=!1,o={display:"table",opacity:"1",position:"fixed","min-width":"800px","border-collapse":"collapse"};if(t&&"STYLE"===t.tagName&&/(market_context_headcrab_container)|(PD94bWwgdmVyc2lvbj0iMS4wIiB)/.test(t.innerHTML)&&(t.innerText=t.innerText.replace(/transform/g,""),e("Yandex style cracked")),t&&"DIV"===t.tagName)for(var r in o){if(window.getComputedStyle(t).getPropertyValue(r)!==o[r]){e("YandexDesktopFound-"+r+" false"),n=!1;break}e("YandexDesktopFound-"+r+" true"),n=!0}t&&n&&(t&&t.style&&(t.style.transform="translate(-10000px, -10000px)"),a.yaD===!1&&(a.yaD=!0))}function o(e){}var r=window.location.hash||!1;if(!window.MutationObserver)return e("MutationObserver not supported!"),!1;if(navigator.userAgent.indexOf("MSIE")!=-1||navigator.userAgent.indexOf("Trident")!=-1||navigator.userAgent.indexOf("Edge")!=-1)return e("IE or Edge"),!1;var a={yaD:!1,yaM:!1,smB:!1},i=new MutationObserver(function(e){e.map(function(e){var r=e.addedNodes[0];n(r),o(r),t()})}),d=new MutationObserver(function(){var e=document.documentElement.style.marginTop;e&&parseInt(e)>0&&(document.documentElement.style.marginTop="")}),s=new MutationObserver(function(){var e=document.body.style.marginTop;e&&parseInt(e)>0&&(document.body.style.marginTop="")}),u=function(){return document.body?(i&&i.observe(document.body,{childList:!0,subtree:!0}),d&&d.observe(document.documentElement,{attributes:!0,attributeFilter:["style"]}),void(s&&s.observe(document.body,{attributes:!0,attributeFilter:["style"]}))):void setTimeout(u,100)};r&&"#ssoff"===r||u()};e()}();</script>
20 Ноябрь 2016, 10:49:33
Ответ #5
  • Пользователь
  • **
  • Сообщений: 81
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В файле header.tpl в head нужно добавить код


Спасибо за код, но не сработало(
20 Ноябрь 2016, 12:13:32
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 16667
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
С ноября новый алгоритм работы в советнике. Использование CSP, скрипта от stopsovetnik  или удаление микроразметки не помогут т.к. теперь советник работает напрямую с браузером.
20 Ноябрь 2016, 12:35:28
Ответ #7
  • Пользователь
  • **
  • Сообщений: 81
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В гуглхроме срабатывает - но может это кеш срабатывает. А вот мозилла и опера пока блокируют. Спасибо.

Эх( вот даже если пишет что на моем сайте самая низкая цена - ну все равно - ну не приятная эта штука(((

13 Январь 2018, 08:40:18
Ответ #8
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
13 Январь 2018, 12:06:15
Ответ #9
  • Ветеран
  • *****
  • Сообщений: 520
  • Репутация: +4/-0
  • Сообщество PrestaShop
    • Просмотр профиля
16 Январь 2018, 09:51:56
Ответ #10
  • Ветеран
  • *****
  • Сообщений: 520
  • Репутация: +4/-0
  • Сообщество PrestaShop
    • Просмотр профиля
<!-- Kill sovetnik -->
<script>
(function(open) { 
    XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {
     
        this.addEventListener("readystatechange", function() { 
       
      var parser = document.createElement('a')
      parser.href = url;
      if( parser.hostname == 'sovetnik.market.yandex.ru' ) {
        this.abort();
        console.log('KILL YANDEX SOVETNIK!')
        }
           
        }, false); 
        open.call(this, method, url, async, user, pass);
    }; 
})(XMLHttpRequest.prototype.open);
</script>
<!-- Kill sovetnik -->
Этот, вроде работает
15 Май 2018, 17:37:42
Ответ #11
  • Новичок
  • *
  • Сообщений: 2
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
https://blocksovetnik.ru/ здесь дешевле. Кто-то использовал?
В топку! Не работает. Совсем не работает.
23 Сентябрь 2018, 17:34:06
Ответ #12
  • Новичок
  • *
  • Сообщений: 9
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
25 Июнь 2019, 14:43:27
Ответ #13
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
попробуйте https://sovban.ru советник блокируется успешно

Выглядит так, будто в мой сайт нужно вставить еще один сайт...

https://blocksovetnik.ru/ здесь дешевле. Кто-то использовал?
В топку! Не работает. Совсем не работает.

Попробуйте установить этот блокировщик https://antisovetnic.ru/, у него все работает на данный момент, во всех браузерах ;)

22 Август 2019, 17:32:03
Ответ #14
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Не советовал бы использовать бесплатные варианты, или те которые за 50 рублей) бесплатные сыр только в мышеловки, обычно такие варианты подозрительные, либо просто не работают.

Кто то искал дешевое решение, вот из нового antisovet.ru, проверил - работает, пару раз писал в ТП с вопросами, всё уточнили