Не получается заекранировать асинхронный код ЯндексДиректа

realmen80

Новичок
Здравствуйте.

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

Код:
function yandex() {
return '<script type="text/javascript">
(function(w, d, n, s, t) {
    w[n] = w[n] || [];
    w[n].push(function() {
        Ya.Direct.insertInto(134653, \'yandex_ad\', {
            ad_format: \'direct\',
            font_size: 1.1,
            type: \'vertical\',
            limit: 2,
            title_font_size: 3,
            links_underline: true,
            site_bg_color: \'FFFFFF\',
            header_bg_color: \'FEEAC7\',
            title_color: \'0000CC\',
            url_color: \'006600\',
            text_color: \'000000\',
            hover_color: \'0066FF\',
            sitelinks_color: \'0000CC\',
            favicon: true,
            no_sitelinks: false
        });
    });
    t = d.getElementsByTagName("script")[0];
    s = d.createElement("script");
    s.src = "//an.yandex.ru/system/context.js";
    s.type = "text/javascript";
    s.async = true;
    t.parentNode.insertBefore(s, t);
})(window, document, "yandex_context_callbacks");
</script>';
}
add_shortcode('yandex', 'yandex');
 

antson

Новичок
Партнер клуба
сделай через
return <<<HTML
здесь не надо мучать экранирование
HTML;
 
Сверху