Ну, я не вижу, где это задокументировано, но эта структура, кажется, сработала для меня (вызов pagination()
в моей коллекции CPT):
$args = array(
'post_type' => 'my_custom_post_type',
'posts_per_page' => 5,
'paged' => $paged
);
$myCollection = new Timber\PostQuery($args);
$context['collection'] = $myCollection;
$context['pagination'] = $myCollection->pagination();
Затем я должен настроитьRoutes::map
для нумерации страниц, чтобы фактически работать.Вот пример:
function add_routes() {
Routes::map(':name/page/:pg', function($params){
$query = 'posts_per_page=1&post_type=page&paged='.$params['pg'];
Routes::load('template-'.$params['name'].'.php', $params, $query);
});
}
Я вызываю эту функцию из корня моего functions.php
(т. Е. Не использую никаких хуков).
Я должен отметить, что это также позволяет мнечтобы по-прежнему получать page
в моем контексте - на каждой постраничной странице - используя $post = new Timber\Post()
.Кажется, ключом является настройка маршрута с помощью posts_per_page=1
и post_type=page
.Первоначально я запутался, настроив отображение маршрута так же, как мой запрос $args
для разбитых на страницы CPT в моем шаблоне.