日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > WordPress > 如何把插件集成到WordPress的主題中?

如何把插件集成到WordPress的主題中?

來源:程序員人生   發布時間:2014-04-09 06:19:53 閱讀次數:3810次

上一篇文章我發了一個免插件調用最多評論文章的代碼,在讀者的評論里出現了兩種意見。一種傾向于支持把一些優秀的插件集成到主題里,省卻用戶的麻煩。一種傾向于在主題里保留對某些插件的支持,在發現該插件激活時自動加載。

我個人傾向于主題應該保持最大限度的精簡,但必須保持良好的插件兼容性。但有一些插件,各方面已經非常完善,并且在未來一定時間內也不會對新版本的WordPress出現兼容問題,我們則可以考慮把它集成到主題里。對于集成到主題里的插件,我們可以體會到一些好處:

1.可以自主整合插件所需的JS和CSS文件,減少HTTP請求;
2.在整合的過程中,你可以去除插件中你不需要的部分,減少垃圾可以令WordPress運行更快;
3.可以提高主題的易用性。

在這個系列的文章里,我將說說怎么把插件集成到主題里,我選用MG12出品的AJAX Comment Pager作為試驗品。這款插件的有點是簡單實用,源碼里注釋詳細。

正文
注意:如果你要按照這個教程試著折騰的話,請先備份你的主題,并且請確認你的主題支持按頁碼進行評論分頁。

步驟1
首先打開ajax-comment-pager文件夾里的ajax-comment-pager.php文件,這個文件就是整個插件的核心。我們可以看到細心的MG12對插件的每一個模塊都做了注釋。

我們要做的是先分析這個插件是怎么運行的,程序結構是怎樣的。

首先,根據注釋,我們可以發現程序結構如下圖:

下面解釋一下各個模塊的作用:
l10n:提供插件的本地化語言,在整合是可以忽略;
options:用于配置插件參數;
AJAX function:處理AJAX請求,并返回相應的結果,核心中的核心;
add to WordPress:加載插件運行所需的JS腳本和CSS樣式文件。
到這里,插件的運行機制已經呼之欲出。
首先由add to WordPress加載所需的文件->在點擊評論翻頁時發出AJAX請求->AJAX function模塊獲取options里的參數,處理AJAX請求并返回結果->add to WordPress事先加載的腳本把AJAX function返回的結果插入到評論列表位置。

步驟2
在充分了解插件的結構以后,我們開始提取所需的代碼,先把cpage_ajax和commentpager_head改名,我給這兩個函數名同意加上了“bolo_”前綴。這一步是為了避免和原來的插件產生沖突,改名的方法推薦先復制原來的函數名,改名后用新函數名全部替換原函數名。
接下來把ajax-comment-pager.css和ajax-comment-pager.js復制到主題文件夾里。水平高一點的童鞋們,在這一步就可以整合css和js文件了,如果你不會整合這兩個文件則需要在主題的header.php里加載這兩個文件,并且在加載ajax-comment-pager.js前需要先輸出以下代碼:

<script type="text/javascript">//< ![CDATA[
var ajaxCommnetsPagerCommentsId = "thecomments" //thecomments是評論列表的ID,請根據自己的主題自行修改
var ajaxCommnetsPagerAjaxLoader = "Loading..."
//]]></script>

步驟3
把 AJAX function 模塊的所有代碼復制到主題的functions.php里,我們還需要修改一下。
我們的目的是直接把最適合我們主題的參數整合進去,所以options,callback method name 和 type 這幾部分都可以刪去,并充新補上$callback和$type這兩個變量。

$callback是自定義評論樣式的名字,一般是custom_comment,請自行查看主題配置。
$type是翻頁是需要顯示的內容,只顯示評論則是&type=comment,只顯示pingback則是&type=pings,兩者都顯示則留空。
在這里我設置為:

$callback = 'custom_comment'; //我的主題里評論樣式名為custom_comment
$type = '&type=comment'; //只顯示評論

步驟4
在打開comments.php,在合適的地方加上:

<span id="cp_post_id">< ?php echo $post->ID; ?></span>

如果你不知道什么地方是“合適的地方”,那就把這句代碼加到任一個</div>前吧。

后記

到這里為止,你可以發現主題集成的AJAX Comment Pager已經可以正常運行了。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美亚洲专区 | 日本动漫做毛片一区二区 | 久久久久国产视频 | www国产亚洲精品久久网站 | 欧美日韩免费网站 | 中国黄色片网站 | 日韩一区二区高清 | 日韩精品久久久久 | 福利一区福利二区 | 国产在线一区二区三区四区 | 黄色毛片免费看 | 久久国产精品-国产精品 | 日韩亚洲视频 | 免费黄色在线看 | 国语精品一区 | 99精品热 | 精品一区二区三区国产 | 国产一区二区三区久久悠悠色av | 麻豆精品久久久 | 黄色网址电影 | 91精品国产色综合久久 | 亚洲区久久 | 男人天堂av网站 | 日韩在线影院 | 色免费在线| 亚洲日本中文 | 成人av在线电影 | 免费av资源 | 天天综合精品 | 国产a免费 | 免费日韩一区二区 | 不卡在线一区 | 伊人亚洲| 亚洲精品福利电影 | youjizz日本人| 精品国产99久久久久久宅男i | 在线亚洲成人 | 麻豆少妇| 狠狠色狠狠色综合人人 | 日韩三级在线观看 | baoyu123成人免费看视频 |