ThinkPHP - 6 - 學習筆記(2015.5.4)

解決:OneThink 站點沒法被友言uyan後臺識別javascript

打開友言uyan插件功能,但OneThink站點沒法被友言uyan後臺檢測到。頁面生成的uyan代碼爲:php

1 <!-- UY BEGIN -->
2 <div id="uyan_frame"></div>
3 <script type="text/javascript" src="http://v2.uyan.cc/code/uyan.js?uid="></script>
4 <!-- UY END -->

你會發現uid並無被設置。查看\Addons\SocialComment\comment.html中加載友言uyan的代碼。html

1 <!-- UY BEGIN -->
2 <div id="uyan_frame"></div>
3 <script type="text/javascript" src="http://v2.uyan.cc/code/uyan.js?uid={$addons.config.comment_uid_youyan}"></script>
4 <!-- UY END -->

你會發現變量 $addons.config 錯誤,應爲 $addons_config。java

解決方案:將 $addons.config 改成 $addons_config。thinkphp

參考資料ide

onethink插件是如何具體運行的 http://jingyan.baidu.com/article/8275fc86b4226146a03cf6d7.htmlui

OneThink裏面的鉤子初始化到運行的流程 http://www.thinkphp.cn/topic/13867.htmlthis

onethink beta1 插件完整文檔 http://www.thinkphp.cn/topic/7058.html編碼


模板渲染(更改VIEW模板文件)spa

模板定義後就能夠渲染模板輸出,系統也支持直接渲染內容輸出,模板賦值必須在模板渲染以前操做。

渲染模板輸出最經常使用的是使用display方法,調用格式:

display('[模板文件]'[,'字符編碼'][,'輸出類型'])

若是沒有按照模板定義規則來定義模板文件(或者須要調用其餘控制器下面的某個模板),能夠使用:

1 $this->display('Member:read');

表示調用Member模塊下面的read模板。渲染輸出不須要寫模板文件的路徑和後綴,確切地說,這裏面的控制器和操做並不必定須要有實際對應的控制器和操做,只是一個目錄名稱和文件名稱而已。

參考資料:模板渲染 http://document.thinkphp.cn/manual_3_2.html#template_display


OneThink中默認左側Navigation

頁面左側Navigation是在\Application\Home\View\default\Public\body.html中定義的:

1 <div class="span3 bs-docs-sidebar">
2     <block name="publish"></block>
3     <ul class="nav nav-list bs-docs-sidenav">
4         {:W('Category/lists', array($category['id'], ACTION_NAME == 'index'))}
5     </ul>
6 </div>

其中 {:W('Category/lists', array($category['id'], ACTION_NAME == 'index'))} 是調用一插件(Widget),其在\Application\Home\Widget\CategoryWidget.class.php中定義。

ACTION_NAME 是ThinkPHP一常量,表示「當前操做名」。

參考資料:OneThink前臺模板展示的幾種方式 http://www.7ak8.com/a/wangzhankaifa/PHP/2015/0109/1176.html

相關文章
相關標籤/搜索