用于创建下一个joomla菜单链接的简单脚本

时间:2014-06-04 10:57:57

标签: php html joomla

我想要的是非常简单的(理论上)。我需要创建一个指向joomla中下一个菜单项的超链接 例如,如果页面设置在menu1-->submenu 1--> item 1上,请跳转到menu1-->submenu 1--> item 2。完成子菜单上的项目后,跳转到下一个子菜单,依此类推。

您可以在此处查看http://www.vasilatos-construction.com/index.php/en/projects/houses/argostoli-area/argostoli页面。

从我的小知识我怀疑解决方案是php。我们需要识别菜单的ID并创建id + 1的链接。谁知道我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

以供将来参考我正在寻找的是

    $app = JFactory::getApplication();
$menu = $app->getMenu()->getActive()->id;

$db = JFactory::getDBO();
$query = "SELECT lft FROM #_menu WHERE id = '$menu'";
$db->setQuery($query);
$lft = $db->loadResult();

$query2 = "SELECT id FROM #_menu WHERE lft = '$lft'+2";
$db->setQuery($query2);
$nid = $db->loadResult();

$query3 = "SELECT id FROM #_menu WHERE lft = '$lft'-2";
$db->setQuery($query3);
$pid = $db->loadResult();

$query4 = "SELECT language FROM #_menu WHERE id = '$menu'";
$db->setQuery($query4);
$lan = $db->loadResult();

if ($lan=="en-GB")
{echo '<a href="index.php?Itemid=';
echo $pid;
echo '">Previous <i  class="icon-chevron-left"></i></a> ' ;
echo '<a href="index.php?Itemid=';
echo $nid;
echo '" class="icon-chevron-right"> Next</a>' ;}
else
{echo '<a href="index.php?Itemid=';
echo $pid;
echo '">Προηγούμενο <i  class="icon-chevron-left"></i></a> ' ;
echo '<a href="index.php?Itemid=';
echo $nid;
echo '" class="icon-chevron-right"> Επόμενο</a>' ;}

答案 1 :(得分:0)

你可以用Javascript做到这一点。请参阅以下代码:

$(document).ready( function()
{
    var current = $('li.current > a').attr('href');
    var next = null;
    var found = false;

    $('.menu a').each( function ()
    {
        var href = $(this).attr('href')
        if ( found )
        {
            next = href;
            return false;
        }

        found = ( href == current );
    });

    if ( next != null ) // here 'next' is the next url you want, if it does exist
});

请注意,我在这里使用jQuery。在if ( next != null )内,您有下一个网址。如果当前菜单项是最后一个,则next为null。