在isCategoryPage方法中检测类别页面

时间:2018-07-10 22:06:34

标签: netsuite suitescript suitecommerce

我目前有一个SCA网站,其中包含需要显示为类别页面而不是产品列表页面的子类别。 (即显示类别,而不是产品)。

当前,我已经修改了isCategoryPage以覆盖Facets.Views.isCategoryPage,从而可以正确执行此操作。但是,在网站上进行搜索时-该页面会以空白页中断。

我目前仍在努力确定如何检测自己是否在搜索页面而不是类别页面上。

代码如下:

...
        // @Overrides Facets.Views.isCategoryPage
        isCategoryPage: function isCategoryPage(translator) {
            var currentFacets = translator.getAllFacets();
            var categories = translator.getCategoryPath();

            if (<--IsSearchPage() === true --->) {
                return (_.keys(categories[categories.length-1].categories).length !== 0);
            } else {
                return (currentFacets.length === 1 &&
                    currentFacets[0].id === 'category' &&
                   categories &&
                    CategoryHelper.showCategoryPage(categories)
                );
            }
        },
...

您可以看到if语句是我需要帮助的地方。

if (<--IsSearchPage() === true --->) {

哪种方法,函数,代码将检测该页面是否为搜索页面。或者,如果页面url中包含/ search。 (两者都可以)。

谢谢。

1 个答案:

答案 0 :(得分:0)

经过多次尝试和错误后,正确的更新:

isCategoryPage: function isCategoryPage(translator) {
    var currentFacets = translator.getAllFacets();
    var categories = translator.getCategoryPath();

    if (categories) {
        return (_.keys(categories[categories.length-1].categories).length !== 0);
    } else {
        return (currentFacets.length === 1 &&
            currentFacets[0].id === 'category' &&
           categories &&
            CategoryHelper.showCategoryPage(categories)
        );
    }
},