wp_add_inline_style

Добавляет дополнительный блок CSS стилей. CSS добавляются прямо в html документ, после основных (указанных) стилей.

Работает, когда стили к которым прикрепляется дополнительный блок уже были добавлены в очередь. В параметре $data нужно сами стили CSS, пр.: ‘.container{ width:50%; }’.

Если более одного блока CSS стилей добавлено к одинаковому файлу стилей (параметр $handle), то блоки будут выведены в порядке их добавления, т.е. более поздний блок будет “перебивать”, при совпадении, стили предыдущего блока.

Для добавления внешних файлов CSS стилей, используйте wp_enqueue_style().

Хуков нет.

Возвращает

Логические true, если удалось добавить стили и false, если нет.

Использование

wp_add_inline_style( $handle, $data );
$handle(строка) (обязательный)
Название стилей (идентификатор) к которому добавить дополнительный блок стилей. Строка в нижнем регистре.
$data(строка) (обязательный)
Строка содержащая CSS правила, которые нужно добавить на страницу.

Примеры

#1 Добавим дополнительные CSS стили

Добавим экстра стили, к уже добавленным на страницу стилям. Например, представим, что плагин или тема использует класс .mycolor для изменения фона элемента. Этим кодом мы можем переписать цвет фона, который получим из настроек темы get_theme_mod('my-custom-color'):

<?php
function wp_add_inline_style( $handle, $data ) {
	_wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );

	if ( false !== stripos( $data, '</style>' ) ) {
		_doing_it_wrong( __FUNCTION__, sprintf(
			/* translators: 1: <style>, 2: wp_add_inline_style() */
			__( 'Do not pass %1$s tags to %2$s.' ),
			'<code>&lt;style&gt;</code>',
			'<code>wp_add_inline_style()</code>'
		), '3.7.0' );
		$data = trim( preg_replace( '#<style[^>]*>(.*)</style>#is', '$1', $data ) );
	}

	return wp_styles()->add_inline_style( $handle, $data );
}

Комментарии:


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

Your email address will not be published. Required fields are marked *