外部页面中的Joomla菜单

时间:2012-08-18 12:57:55

标签: php joomla

我正在尝试在Joomla的主菜单中重新创建菜单项,该页面位于Joomla的模板文件夹之外。

是否有任何可用的方法,例如Wordpress中的'wp_nav_menu',它可以帮助我生成菜单。

1 个答案:

答案 0 :(得分:3)

您需要遵循两个步骤

首先,使您的外部页面能够运行joomla库。为此,您需要在外部php页面中包含几行代码

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__).'/../../../../' );   // should point to joomla root
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();

其次,为您想要的菜单创建一个菜单模块,并在自定义位置启用它,例如'xxxx' 然后将以下代码放在您想要放置该菜单的位置

jimport( 'joomla.application.module.helper' );
$module = JModuleHelper::getModules('xxxx');
// xxxx is any virtual position, no need to create it anywhere.
echo JModuleHelper::renderModule($module[0]);