Anonymous User 17160716
(@anonymized-17160716)
komputer39, привет.
Способ мазохиста: увеличить кол-во отображаемых позиций с 20 до 999 и в три захода выполнить задачу (не факт, что всё пройдёт гладко).
Способ джедая: восстановить через запрос в БД.
Способ падавана: воспользоваться wp_untrash_post()
.
Я очень плох во всех этих делах, можно по подробнее про второй и третий? Или где можно почитать?
Anonymous User 17160716
(@anonymized-17160716)
komputer39, если вы не очень разбираетесь в вопросе, тогда второй способ лучше тоже обойти стороной, а третий способ базово выглядит так:
$postsintrash = get_posts( 'post_status=trash&numberposts=-1&fields=ids' );
foreach ( $postsintrash as $post ) {
wp_update_post( array(
'ID' => $post,
'post_status' => 'publish'
) );
}
Можете его поместить в functions.php вашей темы, либо сделать функциональный плагин. Главное после восстановления записей этот код удалить, чтобы потом удаление ненужного контента происходило в штатном режиме. И, да, может быть в вашем случае нужно будет добавить конкретный post_type
, если не хотите восстанавливать из корзины вообще все записи.
Уточню: post_status
также поменяйте на нужный вам. Основные статусы:
publish
— опубликованная запись;
future
— запланированная к публикации запись;
draft
— черновик;
pending
— ожидающая проверки и утверждения запись;
private
— доступ к записи только для администратора.
вставил в functions.но что то ничего не происходит.может к товару из woocommerce это не подходит?
-
Ответ изменён 2 года, 11 месяцев назад пользователем komputer39.
Anonymous User 17160716
(@anonymized-17160716)
komputer39,
может к товару из woocommerce это не подходит?
Я же уточнил про post_type
:
И, да, может быть в вашем случае нужно будет добавить конкретный post_type
🙂
То есть к строчке post_status=trash&numberposts=-1&fields=ids
допишите post_type=product&
, чтобы в итоге получилось так:
$postsintrash = get_posts('post_type=product&post_status=trash&numberposts=-1&fields=ids');
if ( $postsintrash ) {
foreach ( $postsintrash as $post ) {
wp_update_post( array(
'ID' => $post,
'post_status' => 'publish'
) );
}
}
Очень помогли! Спасибо!!!
Anonymous User 17160716
(@anonymized-17160716)
komputer39, на здоровье! Рад помочь 🙂