<i id="tzb7r"><ruby id="tzb7r"><font id="tzb7r"></font></ruby></i>

      <output id="tzb7r"><strike id="tzb7r"><cite id="tzb7r"></cite></strike></output><ol id="tzb7r"><var id="tzb7r"><b id="tzb7r"></b></var></ol>

      <i id="tzb7r"><output id="tzb7r"><var id="tzb7r"></var></output></i>

          十五年風雨路 · 一心鑄精品

          一個官網 留一件精品 做一個項目 樹一塊樣板

          pbootcms網站建設中替換標題中的特殊符號,自定義標簽修改方法

          上一篇我們提到: 修改appsdminmodelcontent ormmodel.html 增加 // pbootcms二開網站建設自定義表單增加搜索字段查找 public function findFormField($table, $page, $type, $keyword) { return parent::table($table) -

          接下來我們進入今天的正文:
          2022-02-22 14:42:46

          *新在使用pbootcms進行網站建設時,現有的標簽不符合自己的一些業務需求,想著自己做個符合自己的業務的標簽,于是參考了一下網上的資料以后便開始著手開發了,整個二開還是比較簡單,下面放出來需要修改的文件.


          網站建設前端使用標簽的地方

          我的需求其實是在news.html也就是新聞中文章末尾添加一個自定義圖片(根據標題生成一張圖片,因為生成圖片的方法不能包含特殊符號所以需要把標題中的特殊符號尤其是?去掉)


          <!-- 新增圖片_dcx-->

          <p style="text-align: center;" >

                 <img style="width:450px;" src="http://img.mybancai.cn/{pboot:titlereplace title='{content:title}'}.png" alt="{pboot:titlereplace title='{content:title}'}" >

             </p>

          其中{pboot:titlereplace title='{content:title}'}便是我要新增的標簽,title這個屬性是在下面的parserTitleReplaceLabel方法中進行case判斷用的


          ParserController.php  解析標簽的類

          1)在parserAfter方法中新增一行解析入口


          $content = $this->parserTitleReplaceLabel($content);


          public function parserAfter($content)

              {

                  // 默認頁面信息替換

                  $content = str_replace('{pboot:pagetitle}', $this->config('other_title') ?: '{pboot:sitetitle}-{pboot:sitesubtitle}', $content);

                  $content = str_replace('{pboot:pagekeywords}', '{pboot:sitekeywords}', $content);

                  $content = str_replace('{pboot:pagedescription}', '{pboot:sitedescription}', $content);

                  $content = str_replace('{pboot:keyword}', get('keyword', 'vars'), $content); // 當前搜索的關鍵字

                                                                                               

                  // 解析個人擴展標簽,升級不覆蓋

                  if (file_exists(APP_PATH . '/home/controller/ExtLabelController.php')) {

                      if (class_exists('apphomecontrollerExtLabelController')) {

                          $extlabel = new ExtLabelController();

                          $content = $extlabel->run($content);

                      }

                  }

                  

                  $content = $this->parserSiteLabel($content); // 站點標簽

                  $content = $this->parserCompanyLabel($content); // 公司標簽

                  $content = $this->parserMemberLabel($content); // 會員標簽

                  $content = $this->parserNavLabel($content); // 分類列表

                  $content = $this->parserSelectAllLabel($content); // CMS篩選全部標簽解析

                  $content = $this->parserSelectLabel($content); // CMS篩選標簽解析

                  $content = $this->parserSpecifySortLabel($content); // 指定分類

                  $content = $this->parserListLabel($content); // 指定列表

                  $content = $this->parserSpecifyContentLabel($content); // 指定內容

                  $content = $this->parserContentPicsLabel($content); // 內容多圖

                  $content = $this->parserContentCheckboxLabel($content); // 內容多選調取

                  $content = $this->parserContentTagsLabel($content); // 內容tags調取

                  $content = $this->parserSlideLabel($content); // 幻燈片

                  $content = $this->parserLinkLabel($content); // 友情鏈接

                  $content = $this->parserMessageLabel($content); // 留言板

                  $content = $this->parserFormLabel($content); // 自定義表單

                  $content = $this->parserSubmitFormLabel($content); // 自定義表單提交

                  $content = $this->parserSqlListLabel($content); // 自定義SQL輸出

                  

                  $content = $this->parserQrcodeLabel($content); // 二維碼生成

                  $content = $this->parserPageLabel($content); // CMS分頁標簽解析(需置后)

                  $content = $this->parserIfLabel($content); // IF語句(需置*后)

                  $content = $this->parserLoopLabel($content); // LOOP語句(需置后,不可放到if前面,否則有安全風險)

                  $content = $this->restorePreLabel($content); // 還原不需要解析的內容

                  $content = $this->parserReplaceKeyword($content); // 頁面關鍵詞替換

                  $content = $this->parserTitleReplaceLabel($content); // 通用內容替換標簽  這里是我新增的

                  return $content;

              }


          2)添加對應的解析方法


           // 通用內容替換標簽 @mk-title_replace

              //$content這里用的時文章標題,直接是字符串

              public function parserTitleReplaceLabel($content)

              {

                  $pattern = '/{pboot:titlereplace(s+[^}]+)?}/';

           

                  if (preg_match_all($pattern, $content, $matches)) {

                      $count = count($matches[0]);

                      for ($i = 0; $i < $count; $i ++) {

                          $params = $this->parserParam($matches[0][$i]);

                          $data = '';

                          foreach ($params as $key => $value) {

                              switch ($key) {

                                  case 'title'://這里其實可以解析很多的,不只是title,可以根據case進行不同的解析

                                      $data = $value; // 獲取到的文章title

           

                                      if (! $data) { // 無內容不解析

                                          continue;

                                      }

                                      $data = titlereplace($data); //testreplace方法為自定義方法,在ppscommon unction.php里

                                      break;

                              }

                          }

                          $content = str_replace($matches[0][$i], $data, $content);

                      }

                  }

                  return $content;

              }


          function.php 替換方法titlereplace()在這里寫

          function titlereplace($data){

              //把? ?都替換為空格

              $search = array('?','?',' ','%',',');

              return str_replace($search, "_", $data);

          }

          效果圖:




          二維碼

          掃一掃,瀏覽關注本文

          主營業務

          • 高端網站定制
          • 高端網站定制
          • 高端網站定制
          • 高端網站定制
          • 高端網站定制
          • 高端網站定制

          TAGS

          隨機案例

          • 天翊裝飾網站建設

            天翊裝飾網站建設

          • 伊卡璐服飾/服裝網站建設?

            伊卡璐服飾/服裝網站建設?

          • 功夫螞蟻餐飲火鍋加盟網站建設

            功夫螞蟻餐飲火鍋加盟網站建設

          • 新文必生印務、印刷網站建設、包裝網站建設

            新文必生印務、印刷網站建設、包裝網站建設

          • 嬰之皇/孕嬰/母嬰連鎖加盟/網站建設

            嬰之皇/孕嬰/母嬰連鎖加盟/網站建設

          • 金鹿凱斯服飾/服裝網站建設

            金鹿凱斯服飾/服裝網站建設

          • 晉沙匯川服裝定制網站建設

            晉沙匯川服裝定制網站建設

          • 蜀豐食品包裝網站建設

            蜀豐食品包裝網站建設

          案例展示 / CASE

          伊卡璐服飾/服裝網站建設?

          網站以定制,訂制服裝網站建設為主的關鍵詞,網站全新的以HTML5框架定制設計,整站目錄清新明了,利于網站優化,搜索引擎蜘蛛爬行···

          查看詳情

          高鐵乘務/成都職業學校/四川高鐵職業技術學校/網站建設

          查看詳情

          阿杰美容美發培訓網站建設

          查看詳情

          新文必生印務、印刷網站建設、包裝網站建設

          成都印刷網站建設,成都印刷廠網站設計,成都畫冊印刷網站制作,成都畫冊制作網站建設,成都印刷廠家網站建設,四川印刷網站建設,四川···

          查看詳情

          修柏建筑幕墻工程網站建設

          查看詳情

          金鹿凱斯服飾/服裝網站建設

          金鹿凱斯服飾/服裝網站建設以html5響應式一體化設計制作,手機端自動響應,高端大氣上次,關鍵詞:成都職業裝網站建設,成都職業裝···

          查看詳情

          功夫螞蟻餐飲火鍋加盟網站建設

          功夫螞蟻是一家專注于麻辣燙,火鍋,串串香行業的優質餐飲連鎖加盟公司。提供火鍋串串香加盟免費指導、火鍋加盟店選址等,讓您在加盟···

          查看詳情

          嬰之皇/孕嬰/母嬰連鎖加盟/網站建設

          查看詳情

          天翊裝飾網站建設

          天翊裝飾公司網站以html5響應式一體化設計制作,高端大氣上次,關鍵詞:裝修公司網站建設,裝飾公司網站建設,成都裝修公司網站建···

          查看詳情

          五菱電動觀光車網站建設

          網站以HTML5制作,pc+wap網站制作自動跳轉。關鍵詞:五菱觀光車網站建設,五菱巡邏車網站建設,封閉電動巡邏車網站建設,封閉電動觀···

          查看詳情

          晉沙匯川服裝定制網站建設

          查看詳情

          宏冠服飾網站建設

          查看詳情
          ?

          聯系我們 / CONTACT US

          • 四川省成都市金牛區五福橋東路229號龍湖北城天街28棟903
          • 服務熱線:028-86088588  18080432432(微信同號)
          • 總機:028-62322623-0
          • QQ:3575114  107086147

          掃碼訪問手機網站

          版權所有 Copyright ? 2007-2022 四川冠辰科技開發有限公司    川公安網備案:51010602001006號     

          地址:四川省成都市金牛區五福橋東路229號龍湖北城天街28棟903  蜀ICP備11012605號-1

          始于2007年,十五年品牌網站建設,值得信賴!  xml地圖txt地圖

          欧美日韩国产精品自在自线

            <i id="tzb7r"><ruby id="tzb7r"><font id="tzb7r"></font></ruby></i>

              <output id="tzb7r"><strike id="tzb7r"><cite id="tzb7r"></cite></strike></output><ol id="tzb7r"><var id="tzb7r"><b id="tzb7r"></b></var></ol>

              <i id="tzb7r"><output id="tzb7r"><var id="tzb7r"></var></output></i>