Php 向Joomla中的JavaScript添加变量

Php 向Joomla中的JavaScript添加变量,php,jquery,xml,variables,joomla,Php,Jquery,Xml,Variables,Joomla,这是我用来在Joomla网站上显示手风琴的脚本: <?php defined('JPATH_BASE') or die(); gantry_import('core.gantryfeature'); class GantryFeatureAccordion extends GantryFeature { var $_feature_name = 'accordion'; function init() { global $gantry; if

这是我用来在Joomla网站上显示手风琴的脚本:

<?php
defined('JPATH_BASE') or die();
gantry_import('core.gantryfeature');
class GantryFeatureAccordion extends GantryFeature {
    var $_feature_name = 'accordion';
    function init() {
        global $gantry;
        if ($this->get('enabled')) {
            $gantry->addScript('accordion.js');
            $gantry->addInlineScript($this->_accordion());
        }
    }
    function render($position="") {
    ob_start();
    ?>
        <div id="accordion">
            <dl>
            <?php foreach (glob("templates/rt_gantry_j15/features/accordion/*.php") as $filename) {include($filename);} ?>
            </dl>
        </div>
    <?php
    return ob_get_clean();
    }
    function _accordion() {
        global $gantry;
        $js = "
            jQuery.noConflict();
                (function($){   
                $(document).ready(function () {
                    $('#accordion').easyAccordion({ 
                        slideNum: true,                 
                        autoStart: true, 
                        slideInterval: 4000
                    });
                });
            })(jQuery);
        ";
        return $js;
    }
}
与templateDetails.xml文件中的类似:

<param name="accordion" type="chain" label="ACCORDION" description="ACCORDION_DESC">
    <param name="slideNum" type="text" default="true" label="SlideNumber" class="text-short" />
    <param name="autoStart" type="text" default="true" label="AutoStart" class="text-short" />
    <param name="slideinterval" type="text" default="4000" label="SlideInterval" class="text-short" />
</param>

我怎样才能做到?同样的语法是什么

我对编程ans特别是JavaScript非常陌生

请帮忙。

试试这个:

    $cfgParams = &JComponentHelper::getParams( 'com_mycomponent' );
    $js = "
        jQuery.noConflict();
            (function($){   
            $(document).ready(function () {
                $('#accordion').easyAccordion({ 
                    slideNum: ".$cfgParams->get('slideNum', 'true').",                 
                    autoStart: ".$cfgParams->get('autoStart', 'true').", 
                    slideInterval: ".$cfgParams->get('slideInterval', '4000')."
                });
            });
        })(jQuery);
    ";

你很酷。谢谢你的回复。这是开箱即用的。再次感谢。
    $cfgParams = &JComponentHelper::getParams( 'com_mycomponent' );
    $js = "
        jQuery.noConflict();
            (function($){   
            $(document).ready(function () {
                $('#accordion').easyAccordion({ 
                    slideNum: ".$cfgParams->get('slideNum', 'true').",                 
                    autoStart: ".$cfgParams->get('autoStart', 'true').", 
                    slideInterval: ".$cfgParams->get('slideInterval', '4000')."
                });
            });
        })(jQuery);
    ";