ob_get_clean (); не возвращает $ value в shortcode?

я использую этот код:

<?php ob_start(); echo '<div class="judul"><h3 style="text-align: center;"><strong>Download <?php echo esc_html( $judul ); ?> Batch Kumpulan Subtitle Indonesia</strong></h3></div>'; echo '<p><div class="deps"><h4>'; echo "<strong>Episode $bepisode</strong></h4>"; echo '</div></p>'; echo '<div class="dfr">'; echo "<strong>$bkualitas</strong><br/>"; echo '</div>'; echo '<div class="dln">'; echo "&nbsp;&nbsp;&nbsp;&nbsp;<strong>$blink</strong><br/><br/>"; echo '</div>'; echo '<div class="dfr">'; echo "<strong>$bkualitas2</strong><br/>"; echo '</div>'; echo '<div class="dln">'; echo "&nbsp;&nbsp;&nbsp;&nbsp;<strong>$blink2</strong><br/><br/>"; echo '</div>'; echo '<div class="dfr">'; echo "<strong>$bkualitas3</strong><br/>"; echo '</div>'; echo '<div class="dln">'; echo "&nbsp;&nbsp;&nbsp;&nbsp;<strong>$blink3</strong><br/><br/>"; echo '</div>'; $out = ob_get_clean(); ?> 

затем используя этот код в single.php:

 <?php echo do_shortcode( '[restabs alignment="osc-tabs-center" responsive="false" tabcolor="#c1c1c1" tabheadcolor="#0a0a0a" seltabcolor="#8c8c8c" seltabheadcolor="#ffffff" tabhovercolor="#8c8c8c"  responsive="true" icon="true" text="More"][restab title="Link Batch" active="active"]' . $out . '[/restab][/restabs]' );?> 

почему нет выхода метазначения? метазначение не показывает

но без использования ob_get_clean (); и shortcode, я могу получить вывод следующим образом: вывод

делает ob_get_clean (); очистить все $ value? или $ value не работает с коротким кодом?

Вы ничего не видите, потому что вы назначаете контент в $out но тогда вы ничего не делаете с этим значением. Короткие коды должны return их содержимое или вы не увидите никакого вывода.

 $out = ob_get_clean(); return $out; 

или просто

 return ob_get_clean();