Intereting Posts
Как отображать посттипы и таксономии в стандартных сообщениях, а не на отдельной этикетке? Получить теги для текущего пользователя WP_Query по ключевому слову OR post tag Wp_User_Query не сортировка по мета-ключу dynamic_sidebar, не отображающий боковую панель Что такое действие для сохранения медиа-формы на вкладке галереи? Проблема с добавлением метаданных типа сообщения в заголовок с помощью плагина Как сделать другой компьютер в локальной сети, см. Мою тему Функция фильтрации изотопов Удалить атрибуты ширины и высоты из результатов Использовать основную тему CSS для внешней обертки в столбцах категории-списка? Помощь по сокращению короткого кода IF Размещение двух наиболее проголосовавших сообщений наверху (на сайте WordPress, использующем плагин «Голосовать за него»)? Мета-окно не сохраняет и не обновляет wp_mail не отправляет электронную почту, если я передаю массив писем

Каков безопасный способ печати кода отслеживания / пикселя перед тегом </ head> или тегом </ body>

Каков безопасный способ печати кода отслеживания / пикселя перед </head> или тегом </body> из параметров темы.

В header.php я напечатал следующий код перед </head>

 if ( get_theme_mod( 'before_head' ) !== '' ) { echo get_theme_mod( 'before_head' ); } 

Но пользователь может добавить вредоносный скрипт в поле before_head.

Как выводить безопасные / экранированные данные?

Solutions Collecting From Web of "Каков безопасный способ печати кода отслеживания / пикселя перед тегом </ head> или тегом </ body>"

Похоже, вы пытаетесь внедрить поле общего назначения для пользователей, чтобы ввести какой-либо код отслеживания / JS. Такой подход дает пользователям максимальную гибкость, но это означает, что вы доверяете им, чтобы помещать любой JavaScript, который они хотят в верхний и нижний колонтитулы. По умолчанию пользователям нужны роли администратора или супер администратора для редактирования параметров темы, поэтому, пока ваши администраторы доверяют, все должно быть в порядке. WordPress добавит косые черты к значениям опций, когда они будут сохранены, поэтому используйте stripslashes() на выходе.

Другим подходом было бы иметь конкретное поле для каждого сценария, который вы хотите вывести. Попросите пользователя ввести идентификатор / идентификатор / или любой фрагмент уникальной информации, необходимой для определенного фрагмента. Затем в вашей выходной функции объединяйтесь и esc_js() (используя esc_js() ) пользователь esc_js() значение в фрагмент кода JS. Это довольно жестко, но это даст вам жесткий контроль над тем, что пользователь может добавить на сайт.