несколько длинных страниц сайта для управления контентом в WordPress

Вопрос или проблема

Я разрабатываю тему веб-сайта на основе услуг с несколькими длинными страницами контента. Поэтому на первоначальном этапе разработки я использовал жестко закодированный контент. Но теперь я хочу, чтобы весь контент управлялся только из панели администратора WordPress. У меня нет ACF Pro. Даже если я использую ACF, сколько полей нужно добавить, чтобы управлять всем контентом страницы? У меня около 35 блоков контента, которые нужно обновить (10 изображений, 10 альтернативных текстов для изображений, 15 контента).

Ответ или решение

Разработка веб-сайта на платформе WordPress с управлением содержимым через панель администратора — отличный подход для обеспечения гибкости и простоты обновления информации. Ваша цель — создать тему для сервиса с несколькими длинными страницами контента, где вы хотите минимизировать ручное программирование и использовать стандартные функции управления контентом в WordPress. Ниже приведены рекомендации по организации вашего контента без использования ACF Pro и эффективной настройки системы управления.

Структура контента

  1. Кастомные типы постов:
    Создайте кастомный тип постов для вашего сервиса. Это даст вам возможность сегментировать контент и управлять им отдельно от стандартных типов постов (посты и страницы).

    function create_custom_post_type() {
       register_post_type('service',
           array(
               'labels' => array(
                   'name' => __('Сервисы'),
                   'singular_name' => __('Сервис')
               ),
               'public' => true,
               'has_archive' => true,
               'supports' => array('title', 'editor', 'thumbnail', 'custom-fields'),
           )
       );
    }
    add_action('init', 'create_custom_post_type');
  2. Пользовательские поля с помощью метаполей:
    Для добавления изображений, альтернативного текста и контента вы можете использовать стандартные метаполя. Это позволит вам управлять содержимым прямо из админ-панели.

    • Для каждого изображения создайте метаполя (например, service_image_1, service_alt_1, и т.д.).
    • Аналогично создайте метаполя для текстового контента, используя названия вроде service_content_1, service_content_2, и т.д.
  3. Типы контента:
    Рассмотрите страницу как многоразовый элемент с полноценным редактором. Это даст вам возможность добавлять текст прямо в редактор WordPress.

  4. Использование блоков Gutenberg:
    Так как WordPress поддерживает редактор блоков (Gutenberg), вы можете использовать его для создания кастомных блоков для управления вашим контентом. Это будет удобно для пользователей, которые не знакомы с программированием.

Пример реализации метаполей

Добавьте метаполя к вашему кастомному посту для загрузки изображений и ввода текста. Вот пример функции для добавления и сохранения метаполей:

function add_service_meta_boxes() {
   add_meta_box('service_details', 'Детали сервиса', 'render_service_meta_box', 'service', 'normal', 'high');
}

function render_service_meta_box($post) {
   $image = get_post_meta($post->ID, 'service_image_1', true);
   $alt = get_post_meta($post->ID, 'service_alt_1', true);
   $content = get_post_meta($post->ID, 'service_content_1', true);
   ?>
   <label for="service_image_1">Изображение:</label>
   <input type="text" id="service_image_1" name="service_image_1" value="<?php echo esc_attr($image); ?>" />
   <br>
   <label for="service_alt_1">Alt текст:</label>
   <input type="text" id="service_alt_1" name="service_alt_1" value="<?php echo esc_attr($alt); ?>" />
   <br>
   <label for="service_content_1">Содержимое:</label>
   <textarea id="service_content_1" name="service_content_1"><?php echo esc_textarea($content); ?></textarea>
   <?php
}

function save_service_meta_box($post_id) {
   if (array_key_exists('service_image_1', $_POST)) {
       update_post_meta($post_id, 'service_image_1', $_POST['service_image_1']);
   }
   if (array_key_exists('service_alt_1', $_POST)) {
       update_post_meta($post_id, 'service_alt_1', $_POST['service_alt_1']);
   }
   if (array_key_exists('service_content_1', $_POST)) {
       update_post_meta($post_id, 'service_content_1', $_POST['service_content_1']);
   }
}

add_action('add_meta_boxes', 'add_service_meta_boxes');
add_action('save_post', 'save_service_meta_box');

SEO-оптимизация

  1. Оптимизированные заголовки:
    Убедитесь, что заголовки ваших страниц и записей содержат ключевые слова, по которым вы хотите ранжироваться.

  2. Альтернативный текст для изображений:
    Поля alt для изображений помогут улучшить SEO и обеспечат доступность контента.

  3. Уникальный контент:
    Создайте уникальный и ценный контент, который отвечает на вопросы пользователей и решает их проблемы.

Используя эти рекомендации, вы сможете легко управлять содержанием вашего сайта через админ-панель WordPress, независимо от наличия плагинов, таких как ACF Pro. Оптимальная настройка и структура вашего проекта будут способствовать его долгосрочному успеху и удобству в использовании.

Оцените материал
Добавить комментарий

Капча загружается...