get( 'Version' ) ); } add_action( 'wp_enqueue_scripts', 'dp_child_enqueue_styles' ); /** * 2) Création des rôles personnalisés : Visiteur et Animateur * * À ne faire qu'une fois normalement, mais ce code peut rester là * (WordPress ne va pas recréer les rôles à chaque fois, il va juste s'assurer qu'ils existent). */ function dp_creer_roles_personnalises() { // --- Rôle VISITEUR --- if ( ! get_role( 'visiteur' ) ) { add_role( 'visiteur', 'Visiteur', array( 'read' => true, // peut lire le contenu réservé 'edit_posts' => false, // pas d'écriture d'articles 'edit_pages' => false, 'publish_posts' => false, 'upload_files' => false, 'delete_posts' => false, 'moderate_comments' => false, ) ); } // --- Rôle ANIMATEUR --- if ( ! get_role( 'animateur' ) ) { add_role( 'animateur', 'Animateur', array( 'read' => true, 'edit_posts' => true, 'edit_published_posts' => true, 'delete_posts' => true, 'delete_published_posts' => true, 'publish_posts' => true, 'edit_pages' => true, 'edit_published_pages' => true, 'publish_pages' => true, 'delete_pages' => true, 'delete_published_pages' => true, 'upload_files' => true, // Pas de gestion du site/global (pas manage_options, etc.) ) ); } } add_action( 'init', 'dp_creer_roles_personnalises' ); /* Fin création rôles */ /** * 3) Shortcodes personnalisés * - Ici on ajoutera [page_discussion] * - Et plus tard [blog_filtrable_relevanssi], etc. */ /* Exemple de squelette pour le shortcode de discussion */ function dp_page_discussion_shortcode( $atts ) { if ( ! is_singular() ) { return ''; } $post_id = get_the_ID(); // Si tu veux, plus tard, on pourra vérifier les rôles ici. // if ( ! is_user_logged_in() ) { ... } // Vérifie que les commentaires sont ouverts pour ce contenu if ( ! comments_open( $post_id ) ) { return '

La discussion n’est pas ouverte pour cette page.

'; } ob_start(); ?>

Discussion

$post_id, 'status' => 'approve', 'order' => 'ASC', ) ); if ( ! empty( $comments ) ) : ?>
    'ul', 'short_ping' => true, 'avatar_size'=> 32, ), $comments ); ?>

Aucun message pour le moment. Lancez la discussion !

'Ajouter un message', 'title_reply_to' => 'Répondre à %s', 'label_submit' => 'Envoyer', 'comment_notes_before' => '', 'comment_notes_after' => '', ), $post_id ); ?>