set_post_type() — позволяет изменить тип поста с указанным ID

Функция возвращает целое число, равное количеству измененных строк в базе данных, соответственно 1 — в случае успеха, 0 — если тип поста изменить не удалось.

Абсолютно все данные поста сохраняются, вплоть до категорий и меток. Т.е. например, если вы сделали преобразование в страницу page (страницы, как вы знаете, не имеют ни рубрик ни меток), а потом преобразовали обратно в post — и рубрики, и метки у поста останутся те же, которые были до преобразования.

set_post_type( $post_id = 0, $post_type = 'post' )
$post_id
(целое число) ID поста, тип которого нужно изменить (параметр обязателен).
$post_type
(строка) тип поста, в который нужно преобразовать, по умолчанию — post

Пример

Взял пример из кодекса WordPress:

if ( set_post_type( 54, 'page'  ) ) {
    echo "Пост с ID = $post_id теперь страница."; // т.е. стал типом page
} else {
    echo "Невозможно трансформировать указанный пост в страницу.";
}

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

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

%d такие блоггеры, как: