Для решения вашей задачи можно использовать несколько подходов. Вы можете использовать пользовательские таксономии, пользовательские поля или метки для реализации фильтрации материалов. Я предложу решение с использованием пользовательских меток и функции в WordPress, чтобы добавить нужные классы и реализовать выбор материалов в админ-панели.
### Шаг 1: Создание пользовательских меток
Первым делом вам нужно убедиться, что вы используете метки, которые будут соответствовать категориям "важное", "видео", "фото". Вы можете использовать стандартные метки WordPress или создать пользовательскую таксономию.
#### 1.1. Использование стандартных меток
1. В админ-панели WordPress перейдите в "Записи" -> "Метки".
2. Добавьте метки "важное", "видео", "фото".
#### 1.2. Создание пользовательской таксономии (при желании)
Если вы хотите создать пользовательскую таксономию, можно использовать следующий код в `functions.php` вашей темы:
```php
function create_custom_taxonomy() {
register_taxonomy(
'custom_category',
'post',
array(
'label' => __( 'Категории материалов' ),
'rewrite' => array( 'slug' => 'custom-category' ),
'hierarchical' => true,
)
);
}
add_action( 'init', 'create_custom_taxonomy' );
```
### Шаг 2: Вывод материалов
Теперь вам нужно вывести записи с определенными метками. Для этого воспользуемся `WP_Query` или стандартным циклом WordPress. Например:
```php
$custom_query = new WP_Query( array(
'post_type' => 'post',
'tax_query' => array(
array(
'taxonomy' => 'post_tag', // Если используете стандартные метки
'field' => 'slug',
'terms' => array('важное', 'видео', 'фото'),
),
),
) );
if ( $custom_query->have_posts() ) {
while ( $custom_query->have_posts() ) {
$custom_query->the_post();
// Здесь выводите посты
echo '<div class="post '. implode(' ', get_post_class()) . '">';
the_title();
echo '</div>';
}
wp_reset_postdata();
}
```
### Шаг 3: Добавление классов к записям в админ-панели
Для добавления классов к записям в админ-панели на основе выбранных меток добавьте следующий код в `functions.php`:
```php
function add_custom_class_to_posts( $class, $post ) {
if ( has_tag( 'важное', $post ) ) {
$class[] = 'class-важное';
}
if ( has_tag( 'видео', $post ) ) {
$class[] = 'class-видео';
}
if ( has_tag( 'фото', $post ) ) {
$class[] = 'class-фото';
}
return $class;
}
add_filter( 'post_class', 'add_custom_class_to_posts', 10, 2 );
```
### Заключение
С помощью данных шагов вы сможете управлять выводом материалов на WordPress с необходимыми метками и добавлять соответствующие классы для стилей. Если вы столкнетесь с конкретными проблемами на определенных этапах, дайте знать, и я постараюсь помочь более подробно!