wordpress - 分页无法与 Twig 一起正常工作
问题描述
我在 Timber 插件中的 WordPress 中使用 Twig,我基本上遵循了他们在这里用于分页的布局。
它显示一切正常,但似乎该位的参数无法正常工作:
{% include 'partials/pagination.twig' with { pagination: posts.pagination({show_all: false, mid_size: 2, end_size: 1}) } %}
无论我将这些参数设置为什么,它都会输出每一页;所以如果我有 10 页,它将打印出所有 10 个页码;我不想要这个,我试图将其限制为 5。
这里有什么问题?
解决方案
您不需要使用默认pagination
模板,您可以完全自定义
{% set pages_to_show = 5 %}
{% set current = posts.pagination.current %}
{% set max = current + (pages_to_show - 1) %}
{% if max > posts.pagination.total %}
{% set current = posts.pagination.total - (pages_to_show - 1) %}
{% set max = posts.pagination.total %}
{% endif %}
<div class="tool-pagination">
{% if posts.pagination.prev %}
<a href="{{posts.pagination.prev.link}}" class="prev {{posts.pagination.prev.link|length ? '' : 'invisible'}}">Prev</a>
{% endif %}
<ul class="pages">
{% for i in current..max %}
<li>
{% if posts.pagination.pages[i].link %}
<a href="{{posts.pagination.pages[i].link}}" class="{{posts.pagination.pages[i].class}}">{{posts.pagination.pages[i].title}}</a>
{% else %}
<span class="{{posts.pagination.pages[i].class}}">{{posts.pagination.pages[i].title}}</span>
{% endif %}
</li>
{% endfor %}
{% if posts.pagination.next %}
<a href="{{posts.pagination.next.link}}" class="next {{posts.pagination.next.link|length ? '' : 'invisible'}}">Next</a>
{% endif %}
</ul>
</div>
难道这只是你如何解决这个问题的一个小例子
推荐阅读
- c++ - 使用 `std::reference_wrapper 有什么缺点吗
` 作为始终有效的成员变量而不是指针? - regex - 正则表达式忽略双字符
- google-cloud-platform - 是否需要先激活 Google Cloud 才能使用 Google 的 IdP 功能?
- ffmpeg - FFmpeg 刷新编解码器有什么作用?
- android - 在nativescript中检测应用程序空闲计时器/不活动?
- python - 使用 python 解析 XML 数据 - 如何以更 Python 的方式捕获所有内容?
- java - 在 Java 中将国家/地区代码转换为时区
- php - PDO 驱动程序停止工作并开始使用 ODBC 错误?没有版本?
- c - 如何将 char** 作为函数参数返回
- android - React-native-image-picker 将蒙版布局添加到相机