在Joomla中传递参数!模

时间:2013-08-08 03:51:52

标签: php joomla joomla3.0

我在joomla中创建一个简单的模块。我有一个文件mod_progress.php。

defined( '_JEXEC' ) or die( 'Restricted access' );
// Include the syndicate functions only once
require_once( dirname(__FILE__).'/helper.php' );
require( JModuleHelper::getLayoutPath( 'mod_progress' ) );

$document = JFactory::getDocument();
$document->addStyleSheet(JURI::base() . 'modules/mod_progress/tmpl/styles.css');

$percentValues = htmlspecialchars($params->get('percentValues'));

最后一行是这里感兴趣的。我想获取变量$ percentValues并传递它以在模块的default.php模板中使用。

在我的default.php中,我只有:

<?php echo $percentValues; ?> 

这不起作用。我得到的错误告诉我变量是未定义的。

但是,如果我这样做:

<?php $percentValues = htmlspecialchars($params->get('percentValues'));
 echo $percentValues; ?>

它运作得很好。有人可以解释为什么我不能使用变量吗?必须有一些我不知道的大事。使用Joomla! 3.1。

提前谢谢。

贾里德

1 个答案:

答案 0 :(得分:2)

重新排列代码

defined( '_JEXEC' ) or die( 'Restricted access' );
// Include the syndicate functions only once
require_once( dirname(__FILE__).'/helper.php' );

$percentValues = htmlspecialchars($params->get('percentValues'));

$document = JFactory::getDocument();
$document->addStyleSheet(JURI::base() . 'modules/mod_progress/tmpl/styles.css');

require( JModuleHelper::getLayoutPath( 'mod_progress' ) );

应在包含布局之前声明变量。