Подключаем скрипты и стили к постам в WordPress

12 Фев
2010

Для вчерашней заметки, мне понадобилось подключить к посту дополнительный CSS и JavaScript. В настройках WP ни чего подобного не нашел. Поэтому пришлось сделать некоторые доработки в header.php.
Находим в этом шаблоне строчку

<?php wp_head(); ?>
</head>

И вставляем перед ней вот такой вот простенький код:

// Шаг 1
<?php  $custom_fields = get_post_custom($post->ID);
// Шаг 2
 $post_styles=$custom_fields['style'];
 $post_js=$custom_fields['js'];
// Шаг 3
 if(sizeof($post_styles)>0)
 foreach ( $post_styles as $key => $value )
 echo '<link rel="stylesheet" type="text/css" href="'.(get_option('home').$value).'"/>';
 if(sizeof($post_js)>0)
 foreach ( $post_js as $key => $value )
 echo '<script src="'.get_option('home').$value.'" type="text/javascript"></script> ';
?>

Теперь собственно что делает скрипт: на первом шаге он получает массив произвольных параметров поста. На втором — «выдерает» из массива этого массива параметры с нужными нам ключами (в данном случае «style» и «js»). Так как с одним ключем может быть связано несколько параметров, получаем мы тоже массивы. И, наконец, на последнем шаге, проверяется, что массивы не пусты, а затем циклом пишем соответствующие HTML теги.

Теперь, чтобы подключить какой то скрипт к посту, нужно просто при написании поста, в блоке «Произвольные поля» добавить ссылки на стили и/или скрипты, указав в имени параметра «js» — для скрипта и «style» — для стиля.

Внимание! Скрипты подключаются не только на странице поста, но и на главной, когда пост с подключенными скриптами выводится первым. Если кто знает, как этого избежать, буду рад выслушать.

2leep.com

1 комментарий к записи Подключаем скрипты и стили к постам в WordPress

Avatar

Виктор

8th Декабрь 2015 в 4:10

Если стилей несколько то вставляем еще одну аналогичную строку и меняем имя на нужное. Т.е. для каждого внешнего файла своя строка подключения.

Оставить комментарий или два

*

Наверх