Как я могу вывести определенный параграф the_content, используя его css?

Как можно с помощью хука вывести на странице категорий только определенную часть the_content с заданным css-классом? Я пытаюсь использовать add_filter('the_content', 'the_sub'), но мне не хватает знаний о том, как точно это сделать. Вот мой текущий подход: 

```php
add_filter('the_content', 'the_sub');
function the_sub( ... ){
    return $text;
}
```
  • 9 декабря 2023 г. 17:37
Ответы на вопрос 3
Если вы хотите вывести определенный параграф `the_content` с заданным CSS классом, вам необходимо использовать хук `the_content` вместо `add_filter`.

Вот как это можно сделать:

```php
add_action('the_content', 'custom_the_content');
function custom_the_content($content) {
    // Получить текущий URL
    $current_url = $_SERVER['REQUEST_URI'];

    // Проверить, является ли текущая страница страницей категории
    if (is_category()) {
        // Удалить все HTML-теги из контента, кроме параграфов
        $paragraphs = strip_tags($content, '<p>');

        // Получить параграфы контента
        $paragraphs = preg_split('/<\/?p>/', $paragraphs, -1, PREG_SPLIT_NO_EMPTY);

        // Выбрать только тот параграф, который имеет заданный CSS-класс
        foreach ($paragraphs as $paragraph) {
            if (strpos($paragraph, 'your-css-class') !== false) {
                $content = $paragraph;
                break;
            }
        }
    }

    return $content;
}
```

Замените `'your-css-class'` на ваш CSS-класс, который должен быть у выбранного параграфа. 

Обратите внимание, что в этом примере мы проверяем, является ли текущая страница страницей категории с помощью функции `is_category()`, но вы можете изменить это условие в соответствии с вашими требованиями.
Должно работать 
Я бы выбирал из двух вариантов: 
1. Вместо the_content() использовать the_excerpt()
2. Если лень заполнять excerpt, можно с помощью CSS скрывать все ненужное.
Похожие вопросы