wpurok.ru wordpress WPUrok

Как использовать динамические таблицы в WordPress: примеры и решения

Динамические таблицы в WordPress — это мощный инструмент для отображения данных, который позволяет не просто вывести статический HTML, а сделать таблицу интерактивной, с поиском, сортировкой и фильтрацией. В этой статье мы подробно рассмотрим, как создавать такие таблицы с помощью популярных плагинов и собственного кода, а также поделимся полезными советами по оптимизации.

Почему динамические таблицы важны для WordPress-сайтов

Таблицы часто используются для представления большого объема информации: расписания, прайс-листы, каталоги товаров, статистика и многое другое. Статические таблицы неудобны, так как пользователям приходится листать все данные вручную. Динамические таблицы позволяют:

  • Автоматически сортировать данные по колонкам;
  • Фильтровать и искать по ключевым словам;
  • Поддерживать пагинацию для комфортного просмотра;
  • Делать таблицы адаптивными для мобильных устройств.

Все это улучшает UX и повышает вовлеченность посетителей сайта.

Лучшие плагины для создания динамических таблиц в WordPress

TablePress

TablePress — один из самых популярных и бесплатных плагинов для создания и управления таблицами. Он поддерживает импорт из Excel и CSV, удобный редактор, а также расширения для динамических функций.

Для добавления динамических возможностей, таких как сортировка и поиск, нужно активировать опцию "JavaScript DataTables" в настройках плагина.

Пример использования shortcode:

[table id=1 /]

Где 1 — ID вашей таблицы.

WPDataTables

WPDataTables — более продвинутый плагин с поддержкой динамического импорта из баз данных, Excel, CSV, Google Sheets и даже MySQL запросов. Он позволяет строить интерактивные таблицы с фильтрами и сортировкой без написания кода.

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

Posts Table Pro

Если нужно вывести таблицу с записями WordPress, например, список товаров, постов или пользователей, Posts Table Pro — отличный выбор. Он автоматически подтягивает данные из пользовательских полей и таксономий, поддерживает AJAX-поиск и фильтрацию.

Создание динамической таблицы с кастомным кодом в WordPress

Если вы хотите гибко контролировать вывод таблиц и не зависеть от плагинов, можно написать свой код с использованием DataTables — популярной JS-библиотеки для интерактивных таблиц.

Подключение DataTables в теме или плагине

Для начала подключим стили и скрипты DataTables в WordPress. Добавьте в functions.php вашей темы или в файл плагина следующий код:

function wpurok_enqueue_datatables() {
    wp_enqueue_style('datatables-css', 'https://cdn.datatables.net/1.13.4/css/jquery.dataTables.min.css');
    wp_enqueue_script('jquery');
    wp_enqueue_script('datatables-js', 'https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js', array('jquery'), null, true);
    wp_add_inline_script('datatables-js', 'jQuery(document).ready(function($) { $("#wpurok-table").DataTable(); });');
}
add_action('wp_enqueue_scripts', 'wpurok_enqueue_datatables');

Этот код подключает необходимые ресурсы и инициализирует DataTables для таблицы с ID wpurok-table.

Вывод таблицы с данными из базы WordPress

Далее создадим shortcode для вывода динамической таблицы на основе данных из пользовательского типа записи product (предположим, что у вас есть такой тип записи). Код для functions.php или плагина:

function wpurok_dynamic_table_shortcode() {
    global $wpdb;
    $results = $wpdb->get_results("SELECT ID, post_title, post_date FROM {$wpdb->prefix}posts WHERE post_type = 'product' AND post_status = 'publish' ORDER BY post_date DESC");
    if (empty($results)) {
        return '<p>Нет данных для отображения.</p>';
    }
    $output = '<table id="wpurok-table" class="display" style="width:100%">';
    $output .= '<thead><tr><th>ID</th><th>Название продукта</th><th>Дата публикации</th></tr></thead>';
    $output .= '<tbody>';
    foreach ($results as $row) {
        $output .= '<tr>';
        $output .= '<td>' . esc_html($row->ID) . '</td>';
        $output .= '<td>' . esc_html($row->post_title) . '</td>';
        $output .= '<td>' . esc_html(date('d.m.Y', strtotime($row->post_date))) . '</td>';
        $output .= '</tr>';
    }
    $output .= '</tbody></table>';
    return $output;
}
add_shortcode('wpurok_dynamic_table', 'wpurok_dynamic_table_shortcode');

Теперь в любом месте контента вставьте шорткод [wpurok_dynamic_table], и вы получите интерактивную таблицу с сортировкой и поиском.

Фильтрация и расширенные возможности таблиц

DataTables поддерживает множество расширений, которые можно интегрировать в WordPress, например:

  • Фильтрация по дате, диапазону чисел или категориям;
  • Экспорт таблиц в PDF, Excel, CSV;
  • Редактирование ячеек на лету;
  • Группировка строк и столбцов.

Для подключения дополнительных функций потребуется добавить соответствующие скрипты и настроить инициализацию DataTables. Например, для экспорта добавьте:

wp_enqueue_script('datatables-buttons', 'https://cdn.datatables.net/buttons/2.3.6/js/dataTables.buttons.min.js', array('datatables-js'), null, true);
wp_enqueue_script('jszip', 'https://cdnjs.cloudflare.com/ajax/libs/jszip/3.7.1/jszip.min.js', array(), null, true);
wp_enqueue_script('pdfmake', 'https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/pdfmake.min.js', array(), null, true);
wp_enqueue_script('vfs_fonts', 'https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/vfs_fonts.js', array(), null, true);
wp_enqueue_script('buttons-html5', 'https://cdn.datatables.net/buttons/2.3.6/js/buttons.html5.min.js', array('datatables-js'), null, true);

wp_add_inline_script('datatables-js', 'jQuery(document).ready(function($) {
  $("#wpurok-table").DataTable({
    dom: "Bfrtip",
    buttons: ["copyHtml5", "excelHtml5", "csvHtml5", "pdfHtml5"]
  });
});');

Плагины WPShop для улучшения работы с таблицами и данными

Если вы используете WPShop, обратите внимание на следующие продукты для расширения функционала таблиц и контента:

  • WPGPT — для динамического создания и обновления контента на основе AI;
  • WPCommunity — создание внутренней социальной сети с поддержкой таблиц пользователей;
  • Expert Review — автоматизация отзывов, которые можно выводить в виде таблиц с рейтингами.

Использование этих плагинов в связке с динамическими таблицами позволит существенно улучшить функционал вашего сайта.

Заключение по работе с динамическими таблицами в WordPress

Динамические таблицы — крайне полезный инструмент для любого сайта на WordPress, где важна структурированная подача данных. Использование плагинов, таких как TablePress или WPDataTables, позволяет быстро получить функционал без кода, а собственные решения на базе DataTables дают максимальную гибкость и контроль.

Не забывайте о производительности: для больших объемов данных лучше использовать AJAX-загрузку и серверную обработку, чтобы не нагружать браузер пользователя.

Опираясь на приведенные в статье примеры и рекомендации, вы сможете создать удобные, красивые и функциональные таблицы, которые повысят удобство работы с данными на вашем сайте.

×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше