Добавить HTML в тег post <head>

Если я разработал отдельную HTML-страницу, которую я хочу включить на мой сайт WordPress, что это лучший способ ее включить? В этом случае для него требуется библиотека javascript или таблица стилей, которая по умолчанию не используется в моей теме WordPress, которая должна быть вставлена ​​в тег.

Я знаю о следующих решениях:

плавающие фреймы:

  • Чтобы соответствовать стилю сайта, мне нужно будет включить каждый css из темы в заголовок iframe.
  • Если тема обновлена ​​с помощью другой таблицы стилей скрипта, это не будет обновляться в iframe, обслуживание может быть сложным.

Редактирование темы:

Я мог бы добавить в различные файлы тем по строкам:

is_single( 'page1' ) add_action( 'wp_head', 'extra_stuff' ) 

Для каждой публикации / страницы, которую я создаю или изменяю, мне пришлось бы соответствующим образом изменить файлы темы.

В идеале я хотел бы иметь возможность сделать это из редактора сообщений

Есть ли какие-то плагины, которые это делают?

Для такой ситуации вы можете создать собственный шаблон для своей страницы, а также конкретный заголовок, например:

  • template-custompage.php (ваш шаблон страницы)
  • header-custompage.php (ваш настраиваемый заголовок, где вы вызываете свой собственный CSS и скрипты)

В template-custompage.php вы вызываете свой собственный заголовок с помощью:

 get_header( 'custompage' ); 

Затем создайте свою страницу, как обычно, в редакторе WordPress, и выберите свой шаблон страницы в блоке атрибутов страниц.

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

 add_action('wp_head', 'add_HTML_head'); function add_HTML_head(){ global $post; if(!empty($post)){ // get custom field for 'head' $headHTML = get_post_meta($post->ID, 'head', true); if(!empty($headHTML)){ echo $headHTML; } } } 

Я упаковал его в простой плагин .