web-dev-qa-db-fra.com

Comment afficher un widget personnalisé n'importe où

J'ai un widget personnalisé pour les annonces. Cela m'aide à afficher les annonces dans la barre latérale, mais j'essaie de l'afficher sous chaque message ou sur la page de garde près du curseur.

<?php the_widget( 'AdWidget_300' ); ?> 

Comment puis-je appeler un widget personnalisé n'importe où?

2
Dragut

Ajoutez une zone de widget à votre single.php, front-page.php, home.php ou à votre choix .. le fichier de thème du modèle. Ensuite, allez dans Apparence> Widgets et déplacez le widget dans la zone de widget que vous venez de créer.

4
Fleuv

Nous ne pouvons pas afficher de widget personnalisé directement dans le contenu ou à un autre endroit. La fonction the_widget() n'affiche que le widget intégré.

Néanmoins, si vous souhaitez afficher un widget personnalisé, vous devez créer une barre latérale, affecter un widget à la barre latérale nouvellement créée et l'afficher à l'aide de dynamic_sidebar( 'id' );.

Pour plus d'informations http://codex.wordpress.org/Widgeting_Themes

2
Ajay Gadhavana

Une solution claire, simple et facile à votre question consiste à examiner le shortcode amr de tout widget . Comme son nom l'indique, vous pouvez insérer vos widgets dans vos pages à l'aide de codes abrégés, comme suit:

[do_widget "Your Widget" ]
1

@ Bergmann, Il est possible d'afficher 5 annonces sur une seule page en utilisant un seul widget "si toutes les annonces sont ensemble". Toutefois, si vous souhaitez que toutes les annonces se trouvent à différents endroits, vous devez créer différentes zones et différents widgets.

1
PHP Team

Le widget personnalisé fonctionne bien avec <?php the_widget( '' ); ?>

Vous pouvez le tester.

  1. Exemple de widget de copie https://codex.wordpress.org/Widgets_API#Displaying_Widgets

  2. N'oubliez pas de vous inscrire en codex add_action( 'widgets_init', ...

  3. Appelez-le depuis index.php <?php the_widget( 'Foo_Widget' ); ?>

0
Alexufo