Je parviens à ce que ma barre latérale dynamique fonctionne comme suit:
<div class="sidebar sidebar-first">
<ul class="widget-area first">
<?php dynamic_sidebar( 'pop-photos-sidebar' ); ?>
</ul>
</div>
Maintenant, j'essaie de faire fonctionner la barre latérale avec un code différent qui est à l'intérieur d'un code php. J'ai essayé d'utiliser le code < ?php dynamic_sidebar( 'pop-photos-sidebar' ); ? >
ci-dessus et il s'est cassé sur mon site car le code php dynamic_sidebar se trouve dans un autre code php. J'ai donc essayé de créer une fonction $ comme ceci:
$newssidebar = dynamic_sidebar( 'pop-news-sidebar' );
echo '<div class="sidebar sidebar-first">
<ul class="widget-area first">
'.$newssidebar.'
</ul>
</div>';
La barre latérale dynamique "pop-news-sidebar" a été affichée avec succès, mais .. ce n'est pas à l'intérieur de la zone de widgets de classe ul, ni à l'intérieur de la barre de menu div class sidebar-first. Comment pourrais-je faire en sorte que ma barre latérale dynamique soit correctement affichée dans les classes ul et div énumérées ci-dessus, comme il se doit? Aurais-je même recours à l'écho? Je ne pensais pas qu'il était nécessaire de coller le code complet, mais le voici quand même:
<?php
if( fake if code ) {
if( another fake if code ) {
$newssidebar = dynamic_sidebar( 'pop-news-sidebar' );
echo '<div class="sidebar sidebar-first">
<ul class="widget-area first">
'.$newssidebar.'
</ul>
</div>';
}else if( fake else ) {
echo 'some other code';
}
}
?>
Toute aide serait extrêmement appréciée! :)
Vous n'avez pas besoin de echo dynamic_sidebar()
. Terminez votre echo
, appelez dynamic_sidebar()
, puis démarrez une nouvelle echo
. Pour simplifier les choses, fermez/rouvrez vos balises PHP:
<?php
if( fake if code ) {
if( another fake if code ) {
?>
<div class="sidebar sidebar-first">
<ul class="widget-area first">
<?php dynamic_sidebar( 'pop-news-sidebar' ); ?>
</ul>
</div>
<?php
} else if( fake else ) {
echo 'some other code';
}
}
?>