Widget zum Anzeigen der benutzerdefinierten Taxonomie-Tag-Cloud

Wie ändert man das Standard-Widget, um eine Tag-Cloud einer benutzerdefinierten Taxonomie anzuzeigen?

Solutions Collecting From Web of "Widget zum Anzeigen der benutzerdefinierten Taxonomie-Tag-Cloud"

Ich kenne keine, aber Sie können einfach Ihre eigenen erstellen:

< ?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')); } } ?> 

Ändere einfach: ‘Dein Widget-Titel’ mit deinem Titel und deiner ‘Taxonomie hier’ mit dem Namen deiner Taxonomie.

Sie können das Aussehen ändern, indem Sie weitere Argumente in $ cloud_args aus der großen Liste im Codex übergeben

Hoffe das hilft.

Die bestehende Antwort hier ist hervorragend, aber leider aufgrund des Alters der Antwort funktioniert es nicht für neuere Versionen von WordPress.

Der folgende Code verbessert sich auf zwei Arten:

1 – Es ist die empfohlene / bewährte Methode für neuere Versionen von WordPress ab Version 2.8

2 – Sie können die Taxonomie über die Dashboard-Widget-Oberfläche auswählen, anstatt sie fest codieren zu lassen.

 add_action( 'widgets_init', 'custom_register_plugin_widget' ); function custom_register_plugin_widget() { register_widget( 'Widget_Custom_Tax_Tag_Cloud' ); } /** * New "best practice" is to extend the built-in WP_Widget class * * Class Widget_Custom_tax_tag_cloud */ class Widget_Custom_Tax_Tag_Cloud extends WP_Widget { function __construct() { parent::__construct( 'custom_tax_tag_cloud', 'Custom Taxonomy Tag Cloud', array( 'description' => 'Display a tag cloud for a custom taxonomy.' ) ); } /** * Allows for manipulation, calculation, etc. when saving the widget instance in the dashboard. * * @param array $new_instance * @param array $old_instance * * @return array */ function update( $new_instance, $old_instance ) { return $new_instance; } /** * Echos the widget contents in a sidebar * * @param array $args - the general widget arguments * @param array $instance - the settings for this specific widget */ function widget( $args, $instance ) { echo $args['before_widget']; echo $args['before_title'] . 'Your widget title' . $args['after_title']; $cloud_args = array( 'taxonomy' => 'catalogtag' ); wp_tag_cloud( $cloud_args ); echo $args['after_widget']; } /** * Render the "Controls" in the dashboard menu under Appearance => Widgets * * @param array $instance - the settings for this instance of the widget * * @return null */ function form( $instance ) { $instance = wp_parse_args( (array) $instance, array( 'title' => '', 'taxonomy' => 'post_tag' ) ); // Load the list of taxonomies available $taxonomies = get_taxonomies( array( 'public' => TRUE , 'show_tagcloud' => TRUE), 'objects' ); echo '

'; echo '

'; } }

Während Sie dies technisch zur functionsdatei Ihres Themes hinzufügen könnten, tendiere ich dazu, es lieber in eine separate widgets.php Datei (z. B. widgets.php ) aufzunehmen und diese Datei in die functionsdatei aufzunehmen.