国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
WordPress分頁偽靜態(tài)加html后綴,wordpress
首頁 後端開發(fā) php教程 WordPress分頁偽靜態(tài)加html后綴,wordpress_PHP教程

WordPress分頁偽靜態(tài)加html后綴,wordpress_PHP教程

Jul 12, 2016 am 08:50 AM
wordpress 偽靜態(tài)

WordPress分頁偽靜態(tài)加html后綴,wordpress

問題

當(dāng)文章有分頁的時候,WordPress生成的永久鏈接是page.html/2的形式,前面一段是文章的$link,后面的數(shù)字代表分頁$number。那么問題來了,挖掘……不對,從邏輯上講這到底是個html文件還是一個目錄呢?

難看

在.html這個靜態(tài)文件后面加上一個/和數(shù)字簡直令人摸不著頭腦,這還只是其次,重要的是,我發(fā)現(xiàn)搜索引擎根本不收錄這樣奇怪的鏈接,這個真是無法接受,我寫的東西首尾都很重要,不能因為分個頁就被忽視了。

不收錄

拿這篇文章來看,搜索文章第一頁的內(nèi)容,谷歌收錄了:

搜索文章第二頁和第三頁的內(nèi)容,根本沒有收錄:

解決方案

于是我決定DIY WordPress的鏈接生成與解析規(guī)則。

思路

利用filter wp_link_pages_link 將分頁鏈接/123456重寫為page-[123456].html。

利用WordPress或者服務(wù)器的RewriteRule將page-[123456].html還原為/123456

添加鉤子redirect_canonical,防止WordPress從page-[123456].html到/123456的強行跳轉(zhuǎn)。

生成分頁html后綴鏈接

給WordPress主題加入:

class Rewrite_Inner_Page_Links
{
  var $separator;
  var $post_rule;
 
  function __construct()
  {
    $this->separator = '/page-';
    // (.+?)/([^/]+).html(/[0-9]+)?/?
    $this->post_rule = '(.+?)/([^/]+)(' . $this->separator . '([0-9]+))+.html/?$';
    if (!is_admin() || defined('DOING_AJAX')) :
      add_filter('wp_link_pages_link', array($this, 'inner_page_link_format'), 10, 2); // for inner pages
      add_filter('redirect_canonical', array($this, 'cancel_redirect_for_paged_posts'), 10, 2);
    endif;
    if (is_admin()) :
      add_filter('rewrite_rules_array', array($this, 'pagelink_rewrite_rules'));
    endif;
  }
 
  /**
   * 修改post分頁鏈接的格式
   * @param string $link
   * @param int $number
   * @return string
   */
  function inner_page_link_format($link, $number)
  {
    if ($number > 1)
    {
      if (preg_match('%<a href=".*\.html/\d*"%', $link))
      {
        $link = preg_replace("%(\.html)/(\d*)%", $this->separator . "$2$1", $link);
      }
    }
    return $link;
  }
 
  /**
   * 為新的鏈接格式增加重定向規(guī)則,移除原始分頁鏈接的重定向規(guī)則,防止重復(fù)收錄
   *
   * 訪問原始鏈接將返回404
   * @param array $rules
   * @return array
   */
  function pagelink_rewrite_rules($rules)
  {
    $new_rule[$this->post_rule] = 'index.php&#63;name=$matches[2]&page=$matches[4]';
    return $new_rule + $rules;
  }
 
  /**
   * 禁止WordPress將頁面分頁鏈接跳轉(zhuǎn)到原來的格式
   * @param string $redirect_url
   * @param string $requested_url
   * @return bool
   */
  function cancel_redirect_for_paged_posts($redirect_url, $requested_url)
  {
    global $wp_query;
    if (is_single() && $wp_query->get('page') > 1)
    {
      return false;
    }
    return true;
  }
}
 
new Rewrite_Inner_Page_Links();

這樣就得到了將類似http://www.domain.com/program/tokyodaigaku.html/2/ 的分頁鏈接轉(zhuǎn)化為形如 http://www.domain.com/program/tokyodaigaku/page-2.html 的鏈接。

注意,我的偽靜態(tài)規(guī)則是/%category%/%postname%.html,如果你的規(guī)則不同,請自行修改代碼或者偽靜態(tài)規(guī)則。

重寫URL規(guī)則

如果不重寫規(guī)則的話,WordPress是不認(rèn)識這個鏈接的,它以為有個目錄叫tokyodaigaku,里面有篇文章叫page-2.html,結(jié)果會給出一個無情的404錯誤:

利用服務(wù)器的重寫規(guī)則

如果是SAE的話,在config.yaml的第一行加入:

復(fù)制代碼 代碼如下:- rewrite: if ( !is_dir() && path ~ "(.+?)/([^/]+)(/page-([0-9]+))+.html/?$") goto "index.php?name=$2&page=$4"

如果不是的話,可以利用WordPress自帶的rewrite_rules:

登陸后臺——設(shè)置——固定鏈接:

什么也不用填,直接保存更改即可。代碼會自動在數(shù)據(jù)庫中硬性加入一條規(guī)則:

復(fù)制代碼 代碼如下:"(.+?)/([^/]+)(/page-([0-9]+))+.html/?$" => "index.php?name=$matches[2]&page=$matches[4]"

最終效果

無論是用http://www.domain.com/program/tokyodaigaku.html/2/ 還是 http://www.domain.com/program/tokyodaigaku/page-2.html,都可以訪問第二頁。

具體效果放在第二頁,順便測試一下分頁后綴效果

好了,基本功能已經(jīng)實現(xiàn)了,小伙伴們是否明白了呢,如有問題,請留言

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1135016.htmlTechArticleWordPress分頁偽靜態(tài)加html后綴,wordpress 問題 當(dāng)文章有分頁的時候,WordPress生成的永久鏈接是page.html/2的形式,前面一段是文章的$link,后面的...
本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

wordpress文章列表怎麼調(diào) wordpress文章列表怎麼調(diào) Apr 20, 2025 am 10:48 AM

有四種方法可以調(diào)整 WordPress 文章列表:使用主題選項、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代碼(在 functions.php 文件中添加設(shè)置)或直接修改 WordPress 數(shù)據(jù)庫。

為Web開發(fā)者準(zhǔn)備的10個最新工具 為Web開發(fā)者準(zhǔn)備的10個最新工具 May 07, 2025 pm 04:48 PM

Web開發(fā)設(shè)計是一個充滿潛力的職業(yè)領(lǐng)域。然而,這個行業(yè)也面臨著諸多挑戰(zhàn)。隨著越來越多的企業(yè)和品牌轉(zhuǎn)向網(wǎng)絡(luò)市場,Web開發(fā)者有機(jī)會展示他們的技能並在職業(yè)生涯中取得成功。然而,隨著對Web開發(fā)需求的持續(xù)增長,開發(fā)人員的數(shù)量也在增加,導(dǎo)致競爭日益激烈。但令人振奮的是,如果你具備天賦和意願,你總能找到新方法來創(chuàng)造獨特的設(shè)計和創(chuàng)意。作為一名Web開發(fā)人員,你可能需要不斷尋找新的工具和資源。這些新工具和資源不僅能讓你的工作更加便捷,還能提升工作質(zhì)量,從而幫助你贏得更多的業(yè)務(wù)和客戶。 Web開發(fā)的趨勢不斷變化,

wordpress怎麼導(dǎo)入源碼 wordpress怎麼導(dǎo)入源碼 Apr 20, 2025 am 11:24 AM

導(dǎo)入 WordPress 源碼需要以下步驟:創(chuàng)建子主題以進(jìn)行主題修改。導(dǎo)入源碼,覆蓋子主題中的文件。激活子主題,使其生效。測試更改,確保一切正常。

wordpress主機(jī)怎麼建站 wordpress主機(jī)怎麼建站 Apr 20, 2025 am 11:12 AM

要使用 WordPress 主機(jī)建站,需要:選擇一個可靠的主機(jī)提供商。購買一個域名。設(shè)置 WordPress 主機(jī)帳戶。選擇一個主題。添加頁面和文章。安裝插件。自定義您的網(wǎng)站。發(fā)布您的網(wǎng)站。

如何在 Yandex 網(wǎng)站管理員工具中添加您的 WordPress 網(wǎng)站 如何在 Yandex 網(wǎng)站管理員工具中添加您的 WordPress 網(wǎng)站 May 12, 2025 pm 09:06 PM

您想將您的網(wǎng)站連接到Y(jié)andex網(wǎng)站管理員工具嗎? Google搜索控制臺、Bing和Yandex等網(wǎng)站管理員工具可幫助您優(yōu)化網(wǎng)站、監(jiān)控流量、管理robots.txt、檢查網(wǎng)站錯誤等。在本文中,我們將分享如何在Yandex網(wǎng)站管理員工具中添加您的WordPress網(wǎng)站來監(jiān)控您的搜索引擎流量。什麼是Yandex? Yandex是一個位於俄羅斯的流行搜索引擎,類似於Google和Bing。您可以在Yandex中優(yōu)

如何設(shè)置、獲取和刪除 WordPress Cookie(像專業(yè)人士一樣) 如何設(shè)置、獲取和刪除 WordPress Cookie(像專業(yè)人士一樣) May 12, 2025 pm 08:57 PM

您想了解如何在WordPress網(wǎng)站上使用cookie嗎? Cookie是在用戶瀏覽器中存儲臨時信息的有用工具。您可以使用此信息通過個性化和行為定位來增強用戶體驗。在本終極指南中,我們將向您展示如何像專業(yè)人士一樣設(shè)置、獲取和刪除WordPresscookie。注意:這是一個高級教程。它要求您精通HTML、CSS、WordPress網(wǎng)站和PHP。什麼是Cookie? Cookie是用戶訪問網(wǎng)站時創(chuàng)建並存儲在用戶瀏覽

如何修復(fù) WordPress 中的 HTTP 圖片上傳錯誤(簡單) 如何修復(fù) WordPress 中的 HTTP 圖片上傳錯誤(簡單) May 12, 2025 pm 09:03 PM

您需要修復(fù)WordPress中的HTTP圖片上傳錯誤嗎?當(dāng)您在WordPress中創(chuàng)建內(nèi)容時,此錯誤可能會特別令人沮喪。當(dāng)您使用內(nèi)置WordPress媒體庫將圖像或其他文件上傳到CMS時,通常會發(fā)生這種情況。在本文中,我們將向您展示如何輕鬆修復(fù)WordPress中的HTTP圖片上傳錯誤。 WordPress媒體上傳過程中出現(xiàn)HTTP錯誤的原因是什麼?當(dāng)您嘗試使用WordPress媒體上傳器將文件上傳到Wo

wordpress賬號怎麼註冊 wordpress賬號怎麼註冊 Apr 20, 2025 am 11:45 AM

要在 WordPress 上創(chuàng)建賬號,只需訪問其網(wǎng)站,選擇註冊選項,填寫註冊表,並驗證您的電子郵件地址。其他註冊方法包括使用 Google 賬號或 Apple ID。註冊的好處包括創(chuàng)建網(wǎng)站、獲得功能、加入社區(qū)和獲得支持。

See all articles