web-dev-qa-db-fra.com

Comment enregistrer et afficher un widget pour une taxonomie personnalisée

J'ai enregistré une taxonomie personnalisée nommée album. Maintenant, je souhaite enregistrer et afficher un widget personnalisé comme une catégorie afin d'afficher les derniers albums 'x' avec une vignette dans la barre latérale. Ci-dessous se trouve un morceau de code, mais il le montre comme un nuage de tags.

<?php 
add_action("widgets_init", array('Widget_Custom_tax_tag_cloud', 'register'));
class Widget_Custom_tax_tag_cloud {
    function control(){
        echo 'No control panel';
    }
    function widget($args){
        echo $args['before_widget'];
        echo $args['before_title'] . 'Your widget title' . $args['after_title'];
        $cloud_args = array('taxonomy' => 'Your taxonomy here');
        wp_tag_cloud( $cloud_args ); 
        echo $args['after_widget'];
    }
    function register(){
        register_sidebar_widget('Widget name', array('Widget_Custom_tax_tag_cloud', 'widget'));
        register_widget_control('Widget name', array('Widget_Custom_tax_tag_cloud', 'control'));
    }
}
?>

Ceci est l'URL de mon site: http://pagalworldmp.com/

2
user235377

Il y a au moins 3 options:

  1. Vous pouvez utiliser le code pour le widget natif Recent Posts et le modifier dans votre thème enfant pour utiliser votre taxonomie personnalisée.
  2. Vous pouvez créer un nouveau WP_Query en utilisant les paramètres de taxe.
  3. Vous pouvez également utiliser un filtre widget_posts_args pour modifier la sortie par défaut du widget de publications récentes et natives, afin de générer votre taxonomie personnalisée.

Je vous suggère de regarder dans le noyau et de trouver le widget natif des articles récents ou le widget de catégorie et de jeter un coup d'œil au code. Essayez wp-includes/default-widgets.php.

1
Brad Dalton