私はページをウィジェットに追加し、私のワードプレスは私のすべてのページをウィジェットに追加します。
連絡先ページをウィジェットに追加し、他のすべてのページをウィジェットから削除する必要があります。
プラグインなしでそれをする方法?
register_sidebar( array(
'name' => esc_html__( 'Sidebar', 'onepress' ),
'id' => 'sidebar-1',
'description' => '',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
カスタムサイドバーを追加するには、次の手順に従います。
ステップ1:あなたのテーマのfunction.phpファイルにこのコードを入れてください。カスタムサイドバーとカスタムadd_actionを登録します。
function wpdocs_theme_slug_widgets_init() {
register_sidebar( array(
'name' => __( 'Custom Sidebar', 'textdomain' ),
'id' => 'sidebar-10',
'description' => __( 'Widgets in this area will be shown on all posts and pages.', 'textdomain' ),
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2 class="widgettitle">',
'after_title' => '</h2>',
) );
}
add_action( 'widgets_init', 'wpdocs_theme_slug_widgets_init' );
add_action( 'your_custom_hook_name', 'your_function_name' );
function your_function_name( $sidebar_name )
{
is_page( 'sample-page' ) && dynamic_sidebar( 'sidebar-10' ); // your sidebar name
remove_action( current_filter(), __FUNCTION__ );
}
ステップ2:このウィジェットを表示する場所にこのコードを配置してください
<?php do_action( 'your_custom_hook_name' ); ?>