Как компенсировать последние 3 поста в Бытие - Eleven40 pro Theme
Как мне выйти из цикла в Бытие. Я использую Eleven40 Pro, и это home.php
//* Add Genesis grid loop
remove_action( 'genesis_loop', 'genesis_do_loop' );
add_action( 'genesis_loop', 'eleven40_grid_loop_helper' );
function eleven40_grid_loop_helper() {
if ( function_exists( 'genesis_grid_loop' ) ) {
genesis_grid_loop( array(
'features' => 1,
'feature_image_size' => 0,
'feature_image_class' => 'alignleft post-image',
'feature_content_limit' => 0,
'grid_image_size' => 'grid-featured',
'grid_image_class' => 'grid-featured',
'grid_content_limit' => 250,
'more' => __( '[Continue reading]', 'eleven40' ),
) );
} else {
genesis_standard_loop();
}
}
// * Запустить цикл Genesis genesis();
Я просто хочу компенсировать первые три поста. Я не хочу показывать последние 3 сообщения. Пожалуйста, помогите показать мне, как это сделать. Существует также кодовое имя loop.php, которое я нашел в lib/structure/loop.php
1 ответ
Недавно я столкнулся с подобной проблемой и написал учебник о том, как компенсировать ваши посты и поддерживать нумерацию страниц в Genesis Framework. Посмотрите - http://www.steckinsights.com/offset-posts-genesis-framework-without-losing-pagination/
Основываясь на руководстве, которое подробно объяснит это, чтобы вы могли настроить решение для вашей конкретной ситуации, вот код, который я бы предложил разместить в вашем файле home.php (может быть помещен после кода, предоставленного в исходном вопросе):
function myprefix_query_offset(&$query) {
if ( ! $query->is_main_query() ) {
return;
}
$offset = 1 ;
$ppp = get_option('posts_per_page');
if ( $query->is_paged ) {
$page_offset = $offset + ( ($query->query_vars['paged']-1) * $ppp );
$query->set('offset', $page_offset );
}
else {
$query->set('offset',$offset);
}
}
add_action('pre_get_posts', 'myprefix_query_offset', 1 );
add_filter('found_posts', 'myprefix_adjust_offset_pagination', 1, 2 );
function myprefix_adjust_offset_pagination($found_posts, $query) {
$offset = 1;
if ( $query->is_posts_page ) {
return $found_posts - $offset;
}
return $found_posts;
}