У меня есть эта функция:
<?php myWidget() { ?>
<div id="<?php echo $args['widget_id']; ?>">
<p>Something</p>
</div>
<?php } ?>
(widget_id - основная функция Wordpress, поэтому у меня нет прямого доступа к ней, просто генерируется имя виджета)
Я хотел добавить свой виджет в качестве шорткода, поэтому мне нужно было создать другую функцию:
function myWidget_shortcode( $atts ) {
extract( shortcode_atts( array(
/* attributes here */
), $atts ) );
ob_start();
the_widget(myWidget);
return ob_get_clean();
}
the_widget просто вызывает виджет myWidget.
Дело в том, что все работает хорошо, но id = "" всегда пусто, когда я использую второй код.
Я знаю, что это вопрос Wordpress, но я считаю, что это больше связано с моим PHP-кодом.
Есть идеи?