Вопрос:
Добрый день!
В категории «Х» есть записи. Я создал произвольный тип записи для них..
Вопрос: Как массово перенести записи с категории «Х» в произвольный тип записей?
Решение:
Логика:
- Получаем список постов в указанной категории
- циклом изменяем тип этих постов
Код:
<?php
$my_posts = new WP_Query;
$myposts = $my_posts->query( array( //Получаем записи
'post_type' => 'post', // Указываем исходный тип записи
'cat' => 4 // Указываем id категории из которой будем брать записи для преобразования.
) );
foreach( $myposts as $pst ){ //Цикл для изменения типа постов
set_post_type( $pst->ID, 'page' ); // Указываем нужный тип поста вместо "page"
}
?>
FAQ
Вопрос: где эту функцию нужно писать? оформить функцией в functions.php и откуда-то вызвать? или просто выполнить ее в одном из шаблонов?
Ответ: я бы посоветовал вышеуказанную функцию вставить в отдельный файл и запускать когда, когда это надо.
Файл поместить в корень сайта, в файл записать
<?php
// подгружаем среду WP
require($_SERVER['DOCUMENT_ROOT'].'/wp-load.php');
// дальше любой код
?>