簡體   English   中英

WordPress single.php中的小故障無限滾動/分頁循環

[英]Glitch in WordPress single.php Infinite Scroll/Pagination Loop

我已經在single.php文件上創建了快速分頁,以便在頁面底部的循環中使用無限滾動。 這是我用來為無限滾動創建“ nextSelector”和“ navSelector”的代碼:

<?php
    $next_url = $_SERVER['REQUEST_URI'].'2';
?>

<ul class="single-pagination">         
     <li><a class="next pagination-item" href="<?php echo $next_url; ?>/">Next</a></li>
</ul><!--single-pagination-->

這很好,因為它創建了“下一個”頁面以開始無限滾動。 navSelector在無限滾動是ul.single-pagination和我nextSelectora.next.pagination-item 這在大多數頁面上都可以正常工作,但是當我訪問URL末尾帶有數字的頁面時,無限滾動將更改該數字,而不是更改URL上的附加數字。 例如,如果我有這樣的網址:

http://www.example.com/this-post-2/

它將成功加載無限滾動的第一次迭代,這將是:

http://www.example.com/this-post-2/2/

然后在下一次迭代中將在此URL上引發404錯誤:

http://www.example.com/this-post-3/2/

雖然它應該尋找:

http://www.example.com/this-post-2/3/

除了分解無限滾動的JS代碼之外,還有什么方法可以自定義無限滾動要查找的URL?

編輯

這與jquery.infinitescroll.min.js中的RegEx表達式有關,該表達式正在更改URL。 這是我正在修改的代碼。 如果沒有人擊敗我,我將在這里發布答案:

t = t.match(/^(.*?)\b2\b(.*?$)/).slice(1);

解決方案在於jquery.infinitescroll.js(或jquery.infinitescroll.min.js文件)。 作者為此使用的RegEx沒有考慮這些類型的URL。

我在GitHub帳戶中創建了代碼的分支,可在此處訪問:

https://github.com/MillerMedia/infinite-scroll

基本上,這是一個RegEx表達式:

t = t.match(/^(.*?2)\b2\b(.*?$)/).slice(1);

放在此之前:

t = t.match(/^(.*?)\b2\b(.*?$)/).slice(1);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM