WordPress : Comment présélectionner automatiquement la page ou le post parent (ID) dans la liste déroulante ?

Publié par Jean-Michel le

function autoset_parent_dropdown() {
    global $pagenow;
    if($pagenow == 'post-new.php') {
        parent_dropdown( '477', '477', '0', null );
    }
}
add_action( 'admin_init', 'autoset_parent_dropdown' );

Comment présélectionner automatiquement la page ou le post parent (ID) dans la liste déroulante ?

sur post-new.php, lors de la création d’un nouveau message.

J’essaie le code ci-dessus mais cela ne fonctionne pas. Il ne sélectionne aucun article/page parent à l’aide de la fonction parent_dropdown.

J’ai référé: https://developer.wordpress.org/reference/functions/parent_dropdown/

Veuillez me corriger si je fais quelque chose de mal.

Solution n°1 trouvée

Essayez cette méthode. Testé sur WordPress 5.3.2, mais devrait fonctionner sur toutes les versions.

add_filter('default_content', 'assign_parent_to_new_post', 10, 2);
/**
 * @param string $post_content
 * @param WP_Post $post
 *
 * @return string
 */
function assign_parent_to_new_post($post_content, $post)
{
    if ($post->post_type != 'page') {
        return $post_content;
    }

    $post->post_parent = 7; //Parent post_id goes here
    wp_update_post($post);
    return $post_content;
}

L’idée sous-jacente est assez simple – accrochez-vous quelque part dans le processus de création de publication vierge, remplacez post_parent, puis poussez-le vers la base de données.

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *