这是预期的行为。如果您有200个页面,通常不需要200个链接,因此该函数将在开头显示几页、当前页面及其周围的几页,并在结尾显示几页。这是默认值,如果您在第50页:
< Previous 1 ... 48 49 50 51 52 ... 200 Next >
当页面数量非常大时,这将为您提供一组更易于管理的分页链接。
但是,可以通过将参数传递给the_posts_pagination()
. 具体参数如中所述the documentation 对于paginate_links()
, 所使用的the_posts_pagination()
:
如果“show\\u all”参数设置为true,则它将显示所有页面,而不是当前页面附近的页面短列表。默认情况下,“show\\u all”设置为false,并由“end\\u size”和“mid\\u size”参数控制。“end\\u size”参数是开始和结束列表边缘上的数字数量,默认情况下为1。“mid\\u size”参数是指当前页面两侧的数字数量,但不包括当前页面。
因此,您可以控制末端和中间链接的数量,如下所示:
<?php
the_posts_pagination(
[
\'end_size\' => 5,
\'mid_size\' => 2,
]
);
?>
这将为您提供:
< Previous 1 2 3 4 5 ... 48 49 50 51 52 ... 196 197 198 199 200 Next >
虽然您可以使用此选项完全禁用该行为:
<?php
the_posts_pagination(
[
\'show_all\' => true,
]
);
?>
这将导致这种畸形:
< Previous 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 Next >