Добавление & lt; noscript & gt; тег для wp_enqueue_scripts или wp_register_script при добавлении каждого JavaScript?

Мы сталкиваемся с ошибками доступности, когда запускаем проверку доступности для нашего веб-сайта WordPress. Выдается следующее сообщение об ошибке:
«Добавьте раздел noscript, следующий сразу за сценарием, который обеспечивает те же функции, что и сценарий».

У меня вопрос, где я могу проблематично добавить тег noscript?

Пример:

<script type='text/javascript' src='/assets/javascripts/superfish/superfish.js'></script>

Я хотел бы иметь возможность изменить это так, чтобы это выглядело так:

<script type='text/javascript' src='http://www.egstage.com/wp-content/themes/campus/assets/javascripts/superfish/superfish.js'></script>
<noscript>You need to have JavaScript enabled to view this site.</noscript>

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

Любая помощь будет принята с благодарностью.

Спасибо!

-Дейв

0

Решение

Это просто идея, я не тестировал ее, но она должна работать (возможно, с небольшой настройкой).

Напишите функцию, которая заменяет </script> с </script><noscript></noscript> и зарегистрировать как WP фильтр за 'script_loader_tag':

/**
* The filter. It receives the text of the <script> element prepared
* to be put in the page. It appends a <noscript> element after each <script>
* element and returns the new string.
*
* @param string $tag
* @return string
*/
function add_noscript_tag($tag)
{
$noScript = <<<END
<noscript>
This functionality is implemented using Javascript. It cannot work without it, etc...
</noscript>
END;

return str_replace('</script>', '</script>'.$noScript, $tag);
}

// Hook it into WP
add_filter('script_loader_tag', 'add_noscript_tag');
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]