簡體   English   中英

Joomla 3! 模塊參數

[英]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 PortalModules部分中的文章。

嘗試“創建簡單的模塊”一文。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM