一般來說,Joomla的文章預設了一些區塊,專門用來顯示內嵌文章的plugin。這些區塊的資料其實在API手冊中寫得很清楚。可惜我本身沒時間去看,英文也爆爛。後來拆解研究了一下MultiAds後,大略弄懂是如何定義區塊的了。
由於本站中的相關文章功能 (ExtraNews) 一直顯示在回應下方,因此藉由修改顯示區塊後,成功移到回應元件的上方了。
![]() |
此篇為 Joomla! 相關教學文章:所屬擴充套件與適用版本如下
|
|
|
|
|
先看這張圖
我們可以看到文章區塊分成主要的三個外加一個BookMark專用區塊 (當然還有很多其他區塊,這裡只列常用的)
分別是:
- onBeforeDisplayContent - 文章前方,通常用來放廣告之類
- plgContentBookMarks - 標題與本文之間,通常放廣告與書籤
- onPrepareContent - 文字結束後的區塊,通常放廣告與回應 (就是要將ExtraNews改到這)
- onAfterDisplayContent - 整個文章的最下方,通常放廣告與上下頁按鈕等 (怎麼全都有廣告.......)
OK,動手吧!
打開 plugins/content 下的 extranews.php 檔案。
找到 71 行:
function onAfterDisplayContent ( &$article, &$params, $limitstart )
改為
function onPrepareContent ( &$article, &$params, $limitstart )
要注意,ExtraNews 在這一行有個註解,他只允許定義在 onAfterDisplayContent 與 onPrepareContent 中,你定義在其他區塊是不會顯示的。修改其他plugin前請先查清楚,因為不同區塊需要輸入的參數不太一樣。
到此為止算是完成了,然後別忘了在後台外掛管理區,把 ExtraNews 排序調整到回應元件的前方。如圖:
這樣相關文章功能就跑到回應前啦,耶~~~~大功告成!研究好一陣子勒。
除此之外有想調整其他外掛的也都適用,可以自行開啟外掛檔案研究看看。








文章回應