[英]Joomla 3! Module Parameters
我有一個Joomla網站,其中有一個包含mod_myModuleName.php和mod_myModuleName.xml文件的自定義模塊,以及一個文件夾,其中有幾個PHP腳本為模塊添加了特殊功能。 文件夾中有一個config.php文件,其中包含一個帶有變量及其值的硬編碼關聯數組。 該模塊工作正常。
我想要的是為數組中變量的值提供管理員區域,以便我可以將值放在管理員面板中並在config.php中獲取它們的值。 在我的mod_myModuleName.php中,我使用<?php echo $params->get('param')?>
,它的工作原理就像一個魅力。
但是,當我嘗試在config.php中使用相同的技術時,它將破壞我的代碼。 我試圖在mod_myModuleName.php中獲取值,然后將其包含在config.php中並使用變量,但它也不起作用。 我在php中沒有太多經驗,無法理解可能是什么原因。
有時它會給我一些非對象的錯誤,我想一定是與面向對象的php有關的東西,對嗎? 如果是這樣,有沒有一種方法可以克服這種情況而無需面向對象,或者我該如何解決我的問題?
問題將出在您使用config.php
。
當Joomla加載了模塊入口點文件mod_myModuleName.php
在該上下文中$params
對象已經可用,您需要將其提供給腳本。
如果您查看類似mod_articles_latest
模塊的內容,則會注意到此行包括了helper類:
require_once __DIR__ . '/helper.php';
然后,幫助器類將其getList()
方法與傳遞的$params
一起靜態調用,以便$params
可用於類上下文:
$list = ModArticlesLatestHelper::getList($params);
在幫助器類ModArticlesLatestHelper
您會注意到getList()
期望傳入$params
。
public static function getList(&$params)
{
...
}
我強烈建議您閱讀Joomla Doc上 Developers Portal的Modules部分中的文章。
嘗試“創建簡單的模塊”一文。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.