Flector

Как присвоить тегу p в записях определенный css-класс?

Класс SomeClass у всех тегов p в контенте записи

Иногда стандартный способ (что-то вроде #content p{ }) стилизации контента записей может вам не подойти (если вы заранее не знаете, какой идентификатор или класс присвоен области контента в теме). В таких случаях можно воспользоваться "костылем" и присвоить тегам параграфа в записях определенный css-класс, который вы и будете стилизовать нужным вам образом. Сделать это очень просто, для этого вам необходимо добавить в файл functions.php вашей темы следующий код:

//добавляем тегу p в записях определенный класс start
function wph_add_class_for_p_tag($content) {
    $content = str_replace('<p>', '<p class="SomeClass">', $content);
    return $content;
}
add_filter('the_content', 'wph_add_class_for_p_tag', 9999);
add_filter('the_excerpt', 'wph_add_class_for_p_tag', 9999);
//добавляем тегу p в записях определенный класс end

Код можно немного изменить, чтобы задать css-класс только первому параграфу:

//добавляем класс Intro первому параграфу в записях start
function wph_add_class_for_first_p_tag($content){
    return preg_replace('/<p([^>]+)?>/', '<p$1 class="Intro">', $content, 1);
}
add_filter('the_content', 'wph_add_class_for_first_p_tag', 9998);
//добавляем класс Intro первому параграфу в записях end

Класс "Intro" будет добавлен только первому параграфу в каждой записи.


Написать комментарий

Для вставки кода воспользуйтесь кнопкой "Код". Используйте предпросмотр!