Quelle fonction faut-il utiliser pour déplacer les publications de la corbeille vers les pages publiées?
c'est à dire. existe-t-il wp_undelete_post
ou quelque chose comme?
Il n'y a pas wp_undelete_post
mais vous avez d'autres choix:
wp_untrash_post()
: lorsque post est mis à la corbeille, le statut précédent est stocké dans le champ méta _wp_trash_meta_status
. wp_untrash_post()
restaure les messages supprimés, quel que soit leur statut; par exemple, privé, hériter, publier. Je ne l'ai pas testé, mais il devrait également fonctionner avec un statut de publication personnalisé .wp_publish_post()
: si vous souhaitez passer de la corbeille au statut de publication.wp_update_post()
: pour passer de la corbeille à un autre statut.Par exemple, pour un ID d'article donné (de tout type d'article, y compris les pages):
if( get_post_status( $post_ID ) == "trash" ) {
wp_update_post( array(
'ID' => $post_ID,
'post_status' => 'publish'
)
);
}
ou:
if( get_post_status( $post_ID ) == "trash" ) {
wp_publish_post( $post_ID );
}
ou:
if( get_post_status( $post_ID ) == "trash" ) {
wp_untrash_post( $post_ID );
}
C'est peut-être vieux mais il est apparu quand je cherchais un problème similaire. Depuis WP 2.9.0, une fonction est appelée: wp_untrash_post (int $ post_id)
Dans mon cas, cela a fonctionné comme un charme.