Sidebar'da yapmak istediğim:

<div class="module">
<div class="module-head"><div class="module-title"><h3 class="h6>{BASLIK}</h3></div></div>
<div class="module-body">{CONTENT}</div>
</div>
Sidebar kayıt fonksiyonu:

register_sidebar( array(
'name' => __( 'Main Sidebar', 'slug' ),
'id' => 'main-sidebar',
'description' => __( 'Widgets in this area will be shown on all posts and pages.', 'slug' ),
'before_widget' => '<div class="module">',
'after_widget' => '</div></div>',
'before_title' => '<div class="module-head"><div class="module-title"><h3 class="h6">',
    'after_title' => '</h3></div></div><div class="module-body">',
) );
Widget'lara başlık ekleyince sorun olmuyor ama başlık eklemediğimde sorun oluyor. Bunu nasıl çözebilirim? Başlık olup olmadığını kontrol edecek bir yol var mı?

Ben şöyle bir şey buldum ama çalıştıramadım. Aynı kod daha önceden çalışıyordu. Acaba WordPress güncellemesi ile işleyişi değiştirilmiş olabilir mi?

add_filter( 'dynamic_sidebar_params', 'check_sidebar_params' );
function check_sidebar_params( $params ) {
global $wp_registered_widgets;

$settings_getter = $wp_registered_widgets[ $params[0]['widget_id'] ]['callback'][0];
$settings = $settings_getter->get_settings();
$settings = $settings[ $params[1]['number'] ];

if ( $params[0][ 'after_widget' ] == '</div></div>' && isset( $settings[ 'title' ] ) && empty( $settings[ 'title' ] ) )
$params[0][ 'before_widget' ] .= '<div class="module-body">';

return $params;
}