Добавление полей в записи

Обзор

В этом руководстве показано, как добавить произвольные поля к записи WordPress и затем изменить HTML файла шаблона записи.

Записи — это наиболее распространенный способ создавать, редактировать и упорядочивать контент. Записи, страницы и произвольные типы записей считаются объектами Post разных типов записей.

 

Добавление полей

Плагин Advanced Custom Fields очень просто позволяет добавлять произвольные поля к записи. Пожалуйста, выполните шаги ниже.

  1. На административном экране Custom Fields нажмите кнопку Add New, чтобы создать новую группу полей
  2. Добавьте поля, которые вы хотите видеть при редактировании записи
  3. В разделе Locations выберите один из связанных с Post типов правил (например, Post Type), а затем выберите соответствующее значение, чтобы показать эту группу полей

Оставьте настройку Style в значении «Standard», если хотите, чтобы группа полей отображалась внутри WP Postbox.

Редактирование полей

После того как вы создали группу полей и назначили ее для отображения на экране редактирования записи, редактирование значений полей выполняется на административной странице Posts > Add New.

WP хранит каждую запись как объект post в таблице wp_posts. ACF будет хранить все значения произвольных полей в таблице wp_postmeta.

Отображение полей

Настроить HTML для записи WordPress можно очень легко, отредактировав файл single.php или single-{$post_type}.php в вашей теме. В зависимости от темы вы также можете использовать части шаблонов или фильтры для настройки HTML.

В этом примере показано, как изменить шаблон single-event.php из темы twentyseventeen и вывести содержимое, введенное на скриншоте выше.

single-event.php

<?php

get_header();
the_post();


// переменные
$location = get_field('location');
$thumbnail = get_field('thumbnail');

?>

<div class="wrap">
    
    <div id="event-hero">
        
        <?php if( $location ): ?>
        <div id="event-map" class="acf-map">
            <div class="marker" data-lat="<?php echo $location['lat']; ?>" data-lng="<?php echo $location['lng']; ?>"></div>
        </div>
        <?php endif; ?>
        
        
        <?php if( $thumbnail ): ?>
            <img class="thumbnail" src="<?php echo $thumbnail['url']; ?>" alt="<?php echo $thumbnail['alt']; ?>" />
        <?php endif; ?>
        
        <h2><?php the_title(); ?></h2>
        <h3><?php the_field('date'); ?> с <?php the_field('start_time'); ?> по <?php the_field('end_time'); ?></h3>
        <h4><?php echo $location['address']; ?></h4>
        
    </div>
    
    <div id="primary" class="content-area">
        <main id="main" class="site-main" role="main">
            <?php the_content(); ?>
        </main>
    </div>
    
</div>

<?php get_footer(); ?>

Итог

Вот как это может выглядеть в вашем браузере с дополнительными CSS и JS!

Сохранить

Обновлено: 01.06.2026