X-Cart 5仅将自定义模块添加到主页或店面



我正在开发一个X-Cart 5网站,需要在主页(也称为店面)上添加自定义html。

使用X-Cart开发文档,我创建了一个自定义模块,并使用@ListChild指令将修改添加到Crisp-White模板中。

但是,由于我使用了ListChild和list=centre.bottom,我的自定义模块显示在每一页上。我们只希望代码只出现在主页上。

我有几个问题:

  1. 我可以使用哪些@ListChild值仅在主页上显示模块?

  2. 有没有一个网站可以让我看到所有可用@ListChild值的列表?我在X-Cart文档中搜索,找不到可用ListChild职位的列表。

  3. 如果不能使用ListChild,我知道我们可以在模板中查询当前页面。如何测试当前页面是否为主页?

再次感谢您的帮助。

1)您使用了过于通用的视图列表来插入模板。list=center.bottom实际上是每一页的一部分。您可能希望通过网站管理员模式检查页面的页面结构,并查找更具体的视图列表。

或者,您可以创建一个查看器类来显示您的模板:https://devs.x-cart.com/design_changes/ways-to-apply-design-changes.html#registering-视图列表中的查看器类

并指定要在哪些页面上显示此类。为此,您需要在查看器类中创建以下方法:

public static function getAllowedTargets()
{
return array_merge(parent::getAllowedTargets(), array('main'));
}

//main是主页的目标

  1. 没有网站可以查看所有可用的视图列表,但您可以通过网站管理员模式查找特定页面https://devs.x-cart.com/design_changes/ways-to-apply-design-changes.html#seeing-结构,或者您可以在xc_view_lists MySQL表中看到所有视图列表和分配给它们的模板。

  2. 你不能在模板中检查它,但你可以在这样的类中获得它的值:

    XLiteCoreRequest::getInstance()->target;
    

相关内容

  • 没有找到相关文章