If statement 仅在某些页面上使用Virtuemart手风琴
我正在使用Virtuemart 2.0.4和Joomla 2.5。我不是Joomla的明星 我还使用一个手风琴模块来显示Virtuemart类别。现在,我只想在加载Virtuemart时显示手风琴,换句话说:当您在Webshop页面、categorylist和特定产品页面上时 我已经为frontpage做了一个if-else语句,如下所示:If statement 仅在某些页面上使用Virtuemart手风琴,if-statement,joomla,virtuemart,If Statement,Joomla,Virtuemart,我正在使用Virtuemart 2.0.4和Joomla 2.5。我不是Joomla的明星 我还使用一个手风琴模块来显示Virtuemart类别。现在,我只想在加载Virtuemart时显示手风琴,换句话说:当您在Webshop页面、categorylist和特定产品页面上时 我已经为frontpage做了一个if-else语句,如下所示: // IF IS HOMEPAGE $menu = JSite::getMenu(); if ($menu->getActive() == $
// IF IS HOMEPAGE
$menu = JSite::getMenu(); if ($menu->getActive() == $menu->getDefault()) {
} else {
}
我想如果加载了virtuemart,我也可以这样做,比如:
if ( $pageoption != 'com_virtuemart' ) { ?>
DONT LOAD ACCORDION MENU
<?php } else { ?>
LOAD ACCORDION MENU
<?php } ?>
if($pageoption!=“com\u virtuemart”){?>
不要加载手风琴菜单
加载手风琴菜单
但这似乎不起作用
你们知道如何实现这一点吗?Ty一个很好的解决方案就是使用它。它具有检测不同VM页面类型的内置功能,并且可以使用它触发其他模块(或不触发)。您不必更改模板,因为它可以在任何模板中工作。然后,逻辑进入MetaMod,它决定何时包含其他模块或不包含其他模块 您可以通过将一段PHP代码放入MetaMod中,返回要显示的模块的模块id来完成此操作 e、 g.要检测VM中的任何页面,并显示模块:
if ($option == 'com_virtuemart') return XXX;
// replace XXX with the module id of the module to show.
您还可以检测特定的VM页面类型,如下所示:
$vm = JomGenius("virtuemart");
if ($vm->check("pagetype = shop.product_details")) return XXX;
// shop.product_details is for VM1.x. Use "productdetails" for VM2.x.
if ($vm->check("pagetype startswith checkout")) return XXX;
// e.g. checkout.index#1-4, checkout.result, etc
您可以在上找到所有页面类型,以及许多其他您可以查询的内容,例如,检测某物属于哪个类别、以前的购买历史记录、制造商、所显示产品的特定详细信息、购物车内容等。还有更多示例。一个很好的解决方案是使用。它具有用于检测不同的VM页面类型,并可以使用它触发其他模块(或不触发)。在任何模板中工作时,您不必更改模板。然后,逻辑进入MetaMod,由它决定何时包含其他模块 您可以通过将一段PHP代码放入MetaMod中,返回要显示的模块的模块id来完成此操作 e、 g.要检测VM中的任何页面,并显示模块:
if ($option == 'com_virtuemart') return XXX;
// replace XXX with the module id of the module to show.
您还可以检测特定的VM页面类型,如下所示:
$vm = JomGenius("virtuemart");
if ($vm->check("pagetype = shop.product_details")) return XXX;
// shop.product_details is for VM1.x. Use "productdetails" for VM2.x.
if ($vm->check("pagetype startswith checkout")) return XXX;
// e.g. checkout.index#1-4, checkout.result, etc
您可以在上找到所有页面类型,以及许多其他您可以查询的内容,例如检测某物属于哪个类别、以前的购买历史记录、制造商、所显示产品的特定详细信息、购物车内容等。还有更多示例。我对听到PHP解决方案感兴趣,您可能希望将其添加到但是,jQuery搜索主id,然后使用.remove()可以解决这个问题如果为真。您可以将其作为一个扩展来工作,不会改变Joomla中的PHP,并在更新时节省一些麻烦。-此外,您可以在模板中仅为此菜单创建一个新的模块位置,然后为该模块位置包装条件代码。这将至少简化一半的选择。如果使用pre-Package,请小心ged模板..他们喜欢在更新中重写您的代码。我对听到一个PHP解决方案很感兴趣,您可能希望将其添加到标记中。但是,jQuery搜索主id然后使用.remove()有一个解决方法如果为真。您可以将其作为一个扩展来工作,不会改变Joomla中的PHP,并在更新时节省一些麻烦。-此外,您可以在模板中仅为此菜单创建一个新的模块位置,然后为该模块位置包装条件代码。这将至少简化一半的选择。如果使用pre-Package,请小心ged模板..他们喜欢在更新中重写你的代码。