web-dev-qa-db-fra.com

Ajout d'une option au shortcode de la galerie

je commence tout juste dans WP dev, et je cherche tout conseil que je puisse obtenir. Ce que j'aimerais faire, c'est utiliser un crochet ou un filtre pour ajouter ma propre option au shortcode principal de la galerie WP. Je voudrais que cela fonctionne comme l'option standard "exclure", tout en affichant ces images pour les administrateurs. Donc, cela ressemblerait à quelque chose comme ça: [gallery exclude="1" hide="2,3,4,5,6" link="file"]

Donc, fondamentalement, je cherche des conseils sur la manière de créer une fonction qui ajouterait la fonction "masquer" à des identifiants d'image individuels dans le shortcode de la galerie, ce qui fonctionnerait exactement comme l'exclut, mais ces images seraient toujours visibles dans l'interface pour administrateurs. Merci pour votre temps et votre expertise.

1
sosukeinu

Ce code devrait fonctionner dans votre functions.php

add_shortcode('gallery', 'custom_gallery_function');
function custom_gallery_function($atts) {
    $user = wp_get_current_user();

    // if current user isn't admin, add posts to be hidden to exclude
    if(!in_array('administrator', $user->roles))
        $atts['exclude'] = $atts['exclude'] . ',' . $atts['hide'];

    // call the wordpress shortcode function
    return gallery_shortcode($atts);
}
1
Mridul Aggarwal