當前位置: 首頁>>代碼示例>>PHP>>正文


PHP bpBase::loadTagClass方法代碼示例

本文整理匯總了PHP中bpBase::loadTagClass方法的典型用法代碼示例。如果您正苦於以下問題:PHP bpBase::loadTagClass方法的具體用法?PHP bpBase::loadTagClass怎麽用?PHP bpBase::loadTagClass使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在bpBase的用法示例。


在下文中一共展示了bpBase::loadTagClass方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: parseFirstLayerTag

 function parseFirstLayerTag($templateid, $siteID = 0, $channelID = 0, $contentID = 0, $saveFilePath = '', $tagsArr = array(), $pagination = array('pageSize' => 20, 'totalCount' => 0, 'currentPage' => 1, 'urlPrefix' => '', 'urlSuffix' => ''), $obj = null, $type = '', $onlyTags = array(), $exceptTags = array())
 {
     if ($type == 'channel' && file_exists(ABS_PATH . 'templatesCache' . DIRECTORY_SEPARATOR . $templateid . '.channel.parsed.tpl.php')) {
         $templateHtml = file_get_contents(ABS_PATH . 'templatesCache' . DIRECTORY_SEPARATOR . $templateid . '.channel.parsed.tpl.php');
     } else {
         $templateHtml = file_get_contents(ABS_PATH . 'templatesCache' . DIRECTORY_SEPARATOR . $templateid . '.parsed.tpl.php');
     }
     //
     $dir = substr(__FILE__, 0, -7);
     $i = 0;
     if (!$tagsArr) {
         include ABS_PATH . 'templatesCache' . DIRECTORY_SEPARATOR . $templateid . '.tags.tpl.php';
     }
     if ($tagsArr) {
         foreach ($tagsArr as $tag) {
             $parseThisTag = true;
             if (count($onlyTags) && !in_array($tag['name'], $onlyTags)) {
                 //如果標簽不在限製的解析標簽中則不解析
                 $parseThisTag = false;
             }
             if (in_array($tag['name'], $exceptTags)) {
                 $parseThisTag = false;
             }
             if ($parseThisTag && bpBase::loadTagClass('tag_' . $tag['name'])) {
                 $thisTagClassName = 'tag_' . $tag['name'];
                 $thisTagClass = bpBase::loadTagClass('tag_' . $tag['name'], 1);
                 $returnStr = $thisTagClass->getValue($tag['string'], $tag['avs'], $siteID, $channelID, $contentID, $pagination, $obj);
                 $templateHtml = str_replace('<tag_' . $tag['name'] . '_' . $i . '/>', $returnStr, $templateHtml);
             }
             $i++;
         }
     }
     //保存路徑
     if (!$saveFilePath) {
         if ($siteID < 100) {
             $thisSpecial = '';
             $specialIndex = '';
         } else {
             //專題首頁
             $special_db = bpBase::loadModel('special_model');
             $thisSpecial = $special_db->get_one(array('id' => $siteID));
             $specialIndex = $thisSpecial['specialindex'];
         }
         $tplGPath = $this->createGeneratePath($templateid, $channelID, $contentID, $thisSpecial);
         $saveFilePath = ABS_PATH . $tplGPath;
     }
     //stag
     if (strExists($templateHtml, '[stl.')) {
         $stag = bpBase::loadAppClass('stag', 'template');
         $templateHtml = $stag->handleStag($templateHtml);
     }
     file_put_contents($saveFilePath, $templateHtml);
     return $templateHtml;
 }
開發者ID:ailingsen,項目名稱:pigcms,代碼行數:54,代碼來源:template.class.php


注:本文中的bpBase::loadTagClass方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。