Я налагоджую проблему з нашим стороннім сценарієм, який користувачі wordpress використовують, копіюючи / вставляючи фрагмент сценарію та html в тіла своїх публікацій, як-от (звичайно, нереальний приклад):
<script>
window.foobar = window.foobar || { hello: function(){ console.log('Hello World'); } };
window.foobar.hello();
</script>
Я зауважив, що деякі установки wordpress зафіксують це у CDATA, а деякі не (можливо, зробивши якусь перевірку DOCTYPE - хоча всі теми, на яких я тестував це, використовували HTML5-тип).
Тим не менш, під час загортання сценарію в CDATA користувачі будуть покусані наступною помилкою: https://core.trac.wordpress.org/ticket/3670 (закриття >
неправильно замінено >
), що призводить до того, що браузер ігнорує вміст сценарію. :
<script>// <![CDATA[ window.foobar = window.foobar || { hello: function(){ console.log('Hello World'); } }; window.foobar.hello(); // ]]></script>
Я не володію надто великою кількістю WP-Fu, і гуглінг лише призвів до того, щоб визначити проблему такою, якою є, тому моє питання було б: коли саме WordPress загортає вбудовані сценарії в розділи CDATA? Чи може користувач якось запобігти такій поведінці? Чи може користувач якось обходити вищезгадану помилку, не змінюючи ядро WP?