Мы сталкиваемся с ошибками доступности, когда запускаем проверку доступности для нашего веб-сайта 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>
Я пытался решить эту проблему в течение недели, и я подумал, что это будет быстрое решение, но вместо этого это оказывается охотой на мусор.
Любая помощь будет принята с благодарностью.
Спасибо!
-Дейв
Это просто идея, я не тестировал ее, но она должна работать (возможно, с небольшой настройкой).
Напишите функцию, которая заменяет </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');
Других решений пока нет …