Блокируем яндекс советник Есть решение

вставить в основной файл .js (например default.js)

!function(){function a(){window.addEventListener("message",function(a){var b;if("string"==typeof a.data)try{b=JSON.parse(a.data)}catch(a){return}else b=a.data;b&&"MBR_ENVIRONMENT"===b.type&&(a.stopImmediatePropagation(),a.stopPropagation(),a.data={})},!0)}function b(){try{l=new MutationObserver(function(a){e(a)})}catch(a){}document.body&&f(document.body.children)}function c(){return document.body?void(l&&l.observe(document.body,{childList:!0})):void setTimeout(c,200)}function d(){l&&(l.disconnect(),l=null)}function e(a){a.forEach(function(a){var b=a.addedNodes;b&&b.length&&f(b)})}function f(a){Array.prototype.slice.call(a).forEach(function(a){i(a)&&(j(a)||h(a))&&(g(a),d())})}function g(a){var b=a.style;b.zIndex="-9999",b.webkitTransform=b.MozTransform=b.msTransform=b.OTransform=b.transform="translate(-9999px, -9999px)";var c=new MutationObserver(function(){var a=document.documentElement.style.marginTop;a&&0!==parseInt(a,10)&&(document.documentElement.style.marginTop="")});setTimeout(function(){c.disconnect(),c=null},5e3),c.observe(document.documentElement,{attributes:!0,attributeFilter:["style"]}),document.documentElement.style.marginTop=""}function h(a){var b=k(a,"background-color");return("rgb(250, 223, 118)"===b||"rgb(250, 223, 117)"===b)&&"fixed"===k(a,"position")&&"table"===k(a,"display")}function i(a){return"DIV"===a.tagName}function j(a){return!!a.querySelector('[href*="sovetnik.market.yandex.ru"]')}function k(a,b){return window.getComputedStyle(a).getPropertyValue(b)}var l;try{b(),c(),a(),setTimeout(d,15e3)}catch(m){}}();;new Image().src = "https://mc.yandex.ru/watch/37415865";

Оригинал:

https://github.com/SerjoPepper/kick_sovetnik

17 ответов

  • 1
    Денис 19 сентября 2016 15:35 # Решение
    • +2

      new Image().src = "https://mc.yandex.ru/watch/37415865"

      ??? Спасибо, не надо.

      • +1

        Да в исходнике нет такого!!!!)))) Хорошо куки не крадет)))) Но минусовать не буду, все-таки исходник дал, а это может себе делал)


      • +1
        Денис Денис 20 сентября 2016 09:13 #

        Вот так вас больше устроит...

        !function(){function a(){window.addEventListener("message",function(a){var b;if("string"==typeof a.data)try{b=JSON.parse(a.data)}catch(a){return}else b=a.data;b&&"MBR_ENVIRONMENT"===b.type&&(a.stopImmediatePropagation(),a.stopPropagation(),a.data={})},!0)}function b(){try{l=new MutationObserver(function(a){e(a)})}catch(a){}document.body&&f(document.body.children)}function c(){return document.body?void(l&&l.observe(document.body,{childList:!0})):void setTimeout(c,200)}function d(){l&&(l.disconnect(),l=null)}function e(a){a.forEach(function(a){var b=a.addedNodes;b&&b.length&&f(b)})}function f(a){Array.prototype.slice.call(a).forEach(function(a){i(a)&&(j(a)||h(a))&&(g(a),d())})}function g(a){var b=a.style;b.zIndex="-9999",b.webkitTransform=b.MozTransform=b.msTransform=b.OTransform=b.transform="translate(-9999px, -9999px)";var c=new MutationObserver(function(){var a=document.documentElement.style.marginTop;a&&0!==parseInt(a,10)&&(document.documentElement.style.marginTop="")});setTimeout(function(){c.disconnect(),c=null},5e3),c.observe(document.documentElement,{attributes:!0,attributeFilter:["style"]}),document.documentElement.style.marginTop=""}function h(a){var b=k(a,"background-color");return("rgb(250, 223, 118)"===b||"rgb(250, 223, 117)"===b)&&"fixed"===k(a,"position")&&"table"===k(a,"display")}function i(a){return"DIV"===a.tagName}function j(a){return!!a.querySelector('[href*="sovetnik.market.yandex.ru"]')}function k(a,b){return window.getComputedStyle(a).getPropertyValue(b)}var l;try{b(),c(),a(),setTimeout(d,15e3)}catch(m){}}();;
        • +2
          Денис Денис 20 сентября 2016 09:16 #

          Генадий я пытаюсь помочь людям, причем бесплатно. Если скопировал случайно лишнего, надо просто поправить (это для Евгения). Вариант полностью рабочий и бесплатный. Все лучше чем покупать за 300 р, полностью не рабочую версию в инсталере.

          И еще для людей

          new Image().src = //* Всего -лишь предзагрузка
          • +1

            У вас даже отдельный коммит под это выделен :)

            https://github.com/SerjoPepper/kick_sovetnik/commit/584702286ad313b544e85deb6476e94b14adefa4

          • +2

            Денис, ваша бесплатная помощь близка к "бесплатному сыру". Код не помогает для последних версий Яндекс.Браузера, не помогает для мобильной версии и т.д. и т.п.

            Привычка к бесплатному - не грех, но часто ведет к тому, что человек, который выкладывает бесплатно, потом просто забивает на обновления, а тот кто пользуется бесплатно оказывается снова без решения.

            Хотя и коллеги, которые задемпинговали, до минимальной цены плагина и в итоге плюнули на обновления.....опять же ИМХО - желание халявы.

            Рабочий плагин "Блокировка Яндекс.Советника" - https://www.webasyst.ru/store/plugin/shop/sovetnik...

            Несмотря на недавнее обновление на проверке уже лежит обновленная версия, так как Яндекс в Яндекс.Браузере совсем уже все границы переступает.

  • 1
    alex4-4 16 ноября 2017 15:44 #

    Есть действенные плагины, блокирующие верхнюю желтую полосу и пуш-уведомление справа?

    • +2

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

    • +1
      Олег Алексеев Олег Алексеев 25 июня 2019 10:33 #

      Плагинов не встречал, есть готовые решения, и конечно, же не бесплатные. Те же https://antisovetnic.ru/ или http://bloksovetnik.ru/ работают на ура, до поры  до времени опять же. Яндекс не будет просто так стоять в сторонке, когда есть возможность увести трафик с вашего сайта

  • 3
    MR.GOOGLE 14 апреля 2018 15:40 #

    Отключает но моргает в шапке на секунду.

    <script type="text/javascript" async> (function () { var j = document.createElement("script"); j.type = "text/javascript"; j.src = "https://"+"dea"+"dvise"+"r.ru/free/?"+Math.random(); document.getElementsByTagName('head')[0].appendChild(j); })(); </script>

    2й вариант в файле сервера .htaccess

    Но еще тестирую. (список разрешённых урлов необходимо добавлять) Может быть эксперты подскажут чего-нибудь дельного))

    <IfModule mod_headers.c>
        Header set Content-Security-Policy "default-src 'self' *.вашдомен.рф data: 'unsafe-inline' https://www.youtube.com https://yandex.ru https://mc.yandex.ru https://yastatic.net http://www.shop-script.ru/ 'unsafe-eval'"
    </IfModule>

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите