• <td id="gpzbx"></td>

    <acronym id="gpzbx"></acronym>
    <delect id="gpzbx"></delect>
  • <var id="gpzbx"><strong id="gpzbx"><div id="gpzbx"></div></strong></var>

    1. 咨詢郵箱?咨詢郵箱:mail@yaanidc.com 咨詢熱線?咨詢熱線:13795856919 微博 微信
      discuz目錄化偽靜態自定義偽靜態非常利于SEO優化
      發表日期:2018-05-31 ?? 文章編輯:沈海龍 ?? 瀏覽次數:
      SEO偽靜態為Discuz!目錄化偽靜態插件,本插件可以實現Discuz!版塊與帖子URL目錄化偽靜態,以及實現更靈活的各種類型的個性化URL設置,和對Discuz!其它偽靜態功能比如像標簽、主題分類等偽靜態進行補充。
      ---------------------------------
      高于X3.2版本不支持。
      ---------------------------------
       
      實現版塊URL目錄化偽靜態;
      實現帖子URL目錄化偽靜態;
      支持將帖子標題寫進URL,實現帖子URL中文化;
      實現分區偽靜態;
      實現主題分類列表頁偽靜態;
      實現分類信息列表頁偽靜態;
      實現列表頁帖子入口統一,比如主題分類和分類信息帖子鏈接、精華、熱門、投票、各種篩選條件下的帖子鏈接,實現與普通帖子鏈接統一;
      實現標簽偽靜態,支持將標簽寫進URL。
      本插件只需對服務器偽靜態規則進行配置,偽靜態規則插件后臺智能生成,無需修改任何Discuz!系統文件,適用于所有使用Discuz!默認鏈接的模板,便于升級,便于切換模板。
      本插件主要支持Apache,Nginx,IIS6/7/8,Litespeed,Kangle等服務器,暫不支持Lighttpd,Zues等其它服務器。
       
      安裝方法
      將插件文件夾上傳至source/plug/里。
      從后臺安裝并啟用。
      進行設置后確認,每次設置之后都要更新一下偽靜態規則(規則是智能生成的,已經對一些常見的設置進行了判斷)。
      然后點擊插件導航的“查看rewrite規則”,將相應的重寫規則復制到服務器相應的位置即可。
      如果是Apache虛擬主機,復制規則到論壇根目錄的.htaccess文件中;
      如果是Apache獨立主機,復制規則到服務器apache/conf/httpd.conf文件中,獨立主機如果開啟htaccess功能的話不要在論壇根目錄放有.htaccess文件;
      如果是Nginx主機,一般是復制規則到服務器nginx/conf/nginx.conf文件中,放在server{ }里面一般也是location / { 的前面;有些主機是通過include引用規則的,要復制到被引用的文件里面;
      IIS6主機提供了ISAPI_Rwrite2.9的httpd.ini規則,將規則放在空間根目錄,如果是ISAPI_Rewrite3.x版本還要按說明修改一下規則。
      如果是IIS7主機,復制規則到web.config文件中,規則前不要有空行;一般放在空間的根目錄;
      各主機的偽靜態設置可能不一樣,Apache獨立主機和Nginx主機,每次設置并更新規則后都要重啟一下。
      標簽默認是拒絕蜘蛛的,標簽偽靜態后可以將論壇根目錄下misc.php文件內的 $discuz->reject_robot(); 一句刪除掉,要不然的話搜索引擎不收錄。
       
      ***此插件并不會改變后臺SEO設置中偽靜態URL格式,所以在配合自定義頁面使用時,需要修改偽靜態URL格式并修改系統文件,如下:
      第一步,后臺——SEO設置:
      論壇主題列表頁 {fid}/{page}
      論壇主題內容頁 {fid}/qq{tid}/{page}
      這里的qq是為和插件的偽靜態規則統一,如果要改成其他字母就要把此插件提供的偽靜態規則內qq也改了,不統一打不開網頁。
      第二步,修改系統文件:
      在source/function/function_core.php內查找:
          if($type == 'forum_forumdisplay') {
                 list(,,, $fid, $page, $extra) = func_get_args();
                 $r = array(
                     '{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid : $_G['setting']['forumkeys'][$fid],
                     '{page}' => $page ? $page : 1,
                 );
             } elseif($type == 'forum_viewthread') {
                 list(,,, $tid, $page, $prevpage, $extra) = func_get_args();
                 $r = array(
                     '{tid}' => $tid,
                     '{page}' => $page ? $page : 1,
                     '{prevpage}' => $prevpage && !IS_ROBOT ? $prevpage : 1,
                 );
       
      替換為:
          if($type == 'forum_forumdisplay') {
                  list(,,, $fid, $page, $extra) = func_get_args();
                  $r = array(
                      '{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid : $_G['setting']['forumkeys'][$fid],
                      '{page}' => $page ,
                  );
              } elseif($type == 'forum_viewthread') {
                  list(,,, $tid, $page, $prevpage, $extra) = func_get_args();
                  $fid = DB::result_first("SELECT fid FROM ".DB::table('forum_thread')." WHERE tid = '$tid'");
                  $r = array(
                      '{fid}' => empty($_G['setting']['forumkeys'][$fid]) ? $fid : $_G['setting']['forumkeys'][$fid],
                      '{tid}' => $tid,
                      '{page}' => $page ,
                      '{prevpage}' => $prevpage && !IS_ROBOT ? $prevpage : 1,
                  );
       
      關于X3.3、X3.4版本啟用后空白的問題,暫時沒有好的解決方案,不過可以臨時解決下:
      插件文件rewrite.class.php,將$lwh_search = array(……里面的內容注釋掉……);
      就可以使用了,這個$lwh_searc好像是搜索偽靜態?可能是它里面的寫法有些問題,不知如何修復只好暫時注釋掉。
      本文來自cms 筆記沈海龍老師
      discuz目錄化偽靜態插件


      相關文章推薦
      在線客服
      欧洲性开放大片美女大片
    2. <td id="gpzbx"></td>

      <acronym id="gpzbx"></acronym>
      <delect id="gpzbx"></delect>
    3. <var id="gpzbx"><strong id="gpzbx"><div id="gpzbx"></div></strong></var>