Question

Est-il possible de prendre le bouton bleu publier en fin arrière de la placer wordpress et dans le frontend près du poteau dans mon index.php. Je besoin d'un moyen de publier l'article en attendant sans aller au tableau de bord et seul administrateur peut voir le bouton publier?

<?php   
$args=array(
'post_type'         => 'post',
'post_status'       => 'pending',
'order'                 => 'ASC',
'caller_get_posts'  =>1,
'paged'         =>$paged,
            );

Merci à vous tous à l'avance de l'aide: D

Était-ce utile?

La solution

Tout d'abord créer une fonction qui imprimera le bouton de publication:

//function to print publish button
function show_publish_button(){
    Global $post;
    //only print fi admin
    if (current_user_can('manage_options')){
        echo '<form name="front_end_publish" method="POST" action="">
                <input type="hidden" name="pid" id="pid" value="'.$post->ID.'">
                <input type="hidden" name="FE_PUBLISH" id="FE_PUBLISH" value="FE_PUBLISH">
                <input type="submit" name="submit" id="submit" value="Publish">
            </form>';
    }
}

Créez ensuite une fonction pour changer l'état message:

//function to update post status
function change_post_status($post_id,$status){
    $current_post = get_post( $post_id, 'ARRAY_A' );
    $current_post['post_status'] = $status;
    wp_update_post($current_post);
}

Alors assurez-vous de prendre le soumettre du bouton:

if (isset($_POST['FE_PUBLISH']) && $_POST['FE_PUBLISH'] == 'FE_PUBLISH'){
    if (isset($_POST['pid']) && !empty($_POST['pid'])){
        change_post_status((int)$_POST['pid'],'publish');
    }
}

Maintenant tout le code ci-dessus peut aller dans votre fichier functions.php de thème et tout ce que vous avez à faire est show_publish_button(); d'ajouter dans votre boucle de messages en attente après chaque poste.

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top