我有this 帖子和回复David Chu 感谢你启发了我。
我实现这一点的方式没有明显的“错误”。它不起作用的原因是因为我安装了Genesis Simple Sidebars插件和Genesis Woocommerce Connect插件。
这两种方法都使用不同的动作挂钩来显示侧栏。
对于简单的侧栏,您需要使用:
remove_action( \'genesis_sidebar\', \'ss_do_sidebar\' );
。。如果已安装Genesis Woocommerce connect,则需要使用:
remove_action( \'genesis_sidebar\', \'gencwooc_ss_do_sidebar\' );
所以我的代码在函数中。php现在看起来是这样的。
function bge_swap_sidebar() {
if ( is_singular(\'reviews\' ) || is_post_type_archive( \'reviews\' ) ) {
remove_action( \'genesis_sidebar\', \'gencwooc_ss_do_sidebar\' );
add_action( \'genesis_sidebar\', \'reviews_sidebar\' );
}
}
function reviews_sidebar() {
dynamic_sidebar( \'chefsrecipes\' );
}
add_action( \'genesis_before_sidebar_widget_area\', \'bge_swap_sidebar\' );