WEB и WordPress новости, темы, плагины. Здесь мы делимся советами и лучшими решениями для сайтов.

Как экспортировать сообщения в CSV в WordPress

66

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

Я собираюсь добавить одну настраиваемую кнопку на страницу со списком сообщений серверной части. При нажатии этой кнопки автоматически загружается файл CSV, содержащий информацию о сообщениях.

В качестве примера я экспортирую заголовок сообщения, URL сообщения, категории и теги в файл CSV. Пользователь может добавить к нему дополнительные поля. Окончательный результат будет примерно таким, как на скриншоте ниже.

Как экспортировать сообщения в CSV в WordPress

Добавить настраиваемую кнопку в листинг публикации

Чтобы сгенерировать CSV, нам сначала нужно указать кнопку в листинге сообщений серверной части. Кроме того, мы напишем код, который генерирует CSV-файл при нажатии этой кнопки.

Откройте свой functions.phpфайл и поместите в него приведенный ниже код.

function admin_post_list_add_export_button( $which) {     global $typenow;        if ('post' === $typenow && 'top' === $which) {         ?>         <input type="submit" name="export_all_posts" class="button button-primary" value="<?php _e('Export All Posts'); ?>" />         <?php     } }   add_action( 'manage_posts_extra_tablenav', 'admin_post_list_add_export_button', 20, 1 );

Приведенный выше код добавит кнопку «Экспортировать все сообщения» в список сообщений, как показано на снимке экрана. Здесь я использовал крючок, manage_posts_extra_tablenavчтобы разместить настраиваемую кнопку на странице «Все сообщения».

Как экспортировать сообщения в CSV в WordPress

Актуальный код для экспорта сообщений в CSV

На этом этапе вы готовы создать пользовательскую кнопку, которая должна сгенерировать CSV. Теперь давайте добавим код, который генерирует CSV одним нажатием кнопки и отправляет его в браузер для загрузки.

Добавьте в functions.phpфайл приведенный ниже код .

function func_export_all_posts() {     if(isset($_GET['export_all_posts'])) {         $arg = array(             'post_type' => 'post',             'post_status' => 'publish',             'posts_per_page' => -1,         );            global $post;         $arr_post = get_posts($arg);         if ($arr_post) {                header('Content-type: text/csv');             header('Content-Disposition: attachment; filename="wp-posts.csv"');             header('Pragma: no-cache');             header('Expires: 0');                $file = fopen('php://output', 'w');                fputcsv($file, array('Post Title', 'URL', 'Categories', 'Tags'));                foreach ($arr_post as $post) {                 setup_postdata($post);                                    $categories = get_the_category();                 $cats = array();                 if (!empty($categories)) {                     foreach ($categories as $category) {                         $cats[] = $category->name;                     }                 }                    $post_tags = get_the_tags();                 $tags = array();                 if (!empty($post_tags)) {                     foreach ($post_tags as $tag) {                         $tags[] = $tag->name;                     }                 }                    fputcsv($file, array(get_the_title(), get_the_permalink(), implode(",", $cats), implode(",", $tags)));             }                exit();         }     } }   add_action( 'init', 'func_export_all_posts' );

Это оно! Давай, попробуй. Вы должны получить CSV-файл вместе с информацией о вашем сообщении.

Надеюсь, вы понимаете, как экспортировать сообщения в CSV в WordPress. Пожалуйста, поделитесь своими мыслями и предложениями в разделе комментариев ниже.

Статьи по Теме

Источник записи: artisansweb.net

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее