Intereting Posts
установить определенный размер или минимальный размер загрузки Sanitaizing Select Optin для персонализированного типа сообщений Metabox в WP Есть ли крючок или функция, которую я могу использовать для отображения всех файлов тем, используемых на текущей странице? Unix отметка времени для комментариев Список ссылок на теги на страницах с навигацией Как использовать аватар автора как Facebook после просмотра изображения, когда один пост является общим Есть ли плагин для получения формы уведомления об удалении DMCA в WordPress? Как я могу запретить WordPress обертывать в <p> paragragraph Добавить код Adsense между списками вакансий – плагин менеджера работы wp как проверить имя плагина уникальным или нет? Исключить категорию из get_the_category Как исправить ошибку сервера WordPress 500 Внутренняя ошибка сервера из-за пользовательского типа сообщения В чем разница между использованием глобальных $ current_screen и get_current_screen ()? Измените недавнюю боковую панель сообщений, чтобы показать превью с выпадающими плагинами Решение HelpDesk для WordPress

Удалите все пользовательские сообщения, затем загрузите новый CSV-событий

У меня возникли проблемы с удалением всех сообщений, а затем повторной загрузкой нового CSV-событий в пользовательские типы сообщений типа «события» и удалось собрать вместе совместное решение. Надеемся, это поможет другим с той же проблемой.

Теперь мой вопрос заключается в том, что это безопасный способ решения этой проблемы, и если это не так, что мне нужно делать?

functions.php

/*--------------------------------------------------------------- Delete post and insert new posts from CSV file ------------------------------------------------------------*/ function jab_admin_notice() { // Add buttons to post type $screen = get_current_screen(); if( 'events' == $screen->post_type && 'edit' == $screen->base ){ echo "<div class='updated'></p>"; echo "<a class='button button-primary' href='".strtok($_SERVER["REQUEST_URI"],'&')."&insert_event_posts'>Insert Posts</a>"; echo "<a class='button button-primary' href='".strtok($_SERVER["REQUEST_URI"],'&')."&delete_event_posts'>delete Posts</a></p></div>"; } } add_action( 'admin_notices', 'jab_admin_notice' ); add_action( "admin_init", function() { global $wpdb; //UPLOADS CSV - ADDS POSTS //check for parameter. if ( isset( $_GET["insert_event_posts"] ) ) { //get csv path $path = "/calendar.csv"; //Open the CSV file $file = fopen(__DIR__ . $path, 'r'); while (($line = fgetcsv($file)) !== FALSE) { //$line is an array of the csv elements $post["id"] = wp_insert_post( array( "post_title" => $line[0], "post_author" => 1, "post_content" => $line[5], "post_type" => 'events', "post_status" => "publish" )); //Update any linked meta data update_post_meta( $post["id"], 'meta-box-startdate', $line[1] .'-'. $line[2]); update_post_meta( $post["id"], 'meta-box-enddate', $line[3] .'-'. $line[4] ); } fclose($file); //check for parameter. } else if( isset( $_GET["delete_event_posts"] ) ) { //REMOVES ALL POST $args = array ( 'post_type' => 'events', 'nopaging' => true ); $query = new WP_Query ($args); while ($query->have_posts ()) { $query->the_post (); $id = get_the_ID (); wp_delete_post ($id, false); } wp_reset_postdata (); } else { //DO NOTHING return; } }); 

Любые предложения были бы замечательными. благодаря