Genesis没有提供一种方法来替换正常的循环结构。你被旧标准束缚了genesis_standard_loop()
:
if ( have_posts() ) : while ( have_posts() ) : the_post();
或中的新查询
genesis_custom_loop()
(回拨至
genesis_standard_loop()
):
$wp_query = new WP_Query( $args );
/** Only set $more to 0 if we\'re on an archive */
$more = is_singular() ? $more : 0;
genesis_standard_loop();
要添加插件循环,请替换
genesis_custom_loop()
使用您自己的循环。
1) 复制genesis_standard_loop()
(在Genesis副本的未来HTML5版本中genesis_legacy_loop()
. 位于/themes/Genesis/lib/structure/loops.php
),
2) 使用新前缀重命名,如下所示:wpse_93883_custom_loop()
,
3) 替换以下行:
if ( have_posts() ) : while ( have_posts() ) : the_post();
使用插件代码:
if ( cnr_have_children() ) : while ( cnr_have_children() ) : cnr_next_child();
4) 将此添加到呼叫上方的某个位置
genesis();
在模板文件中:
remove_action( \'genesis_loop\', \'genesis_do_loop\' );
add_action( \'genesis_loop\', \'wpse_93883_custom_loop\' );
5) 将新函数放在步骤4下面(模板文件中)
6) 进行这些更改应保留所有预期的Genesis自定义操作。要添加标题和内容,请在调用
genesis();
:
add_action( \'genesis_post_title\', \'wpse_93883_post_title\' );
function wpse_93883_post_title() {
printf( \'<h3>%s</h3>\', get_the_title() );
}
add_action( \'genesis_post_content\', \'wpse_93883_post_content\' );
function wpse_93883_post_content() {
the_excerpt();
}