【问题标题】:MAGNOLIA CMS - cmsu:simpleSearch works in Author instance but returns no results in Public instanceMAGNOLIA CMS - cmsu:simpleSearch 在作者实例中工作,但在公共实例中不返回任何结果
【发布时间】:2011-09-20 16:07:13
【问题描述】:

我正在使用以下代码来显示我的搜索结果

<c:if test="${!empty param.SearchName}">
    <h1>Results for "${fn:escapeXml(param.SearchName)}"</h1>
    <ol>
        <cmsu:simpleSearch query="${param.SearchName}" var="results" startLevel="1" />
        <c:if test="${empty results}">
            <p>No results could be found</p>
        </c:if>
        <c:forEach var="node" items="${results}">
            <li>
                <span class="pageTitle"><a href="${pageContext.request.contextPath}${node.handle}.html">${node.title}</a></span>

                <a href="${pageContext.request.contextPath}${node.handle}.html"><p class="snipet"><cmsu:searchResultSnippet query="${fn:escapeXml(param.SearchName)}" page="${node}" chars="120"/></p></a>
            </li>
        </c:forEach>
    </ol>
</c:if>

它在 Author 实例中运行良好,但由于某种原因,在公共实例中返回的结果集始终为空。

条件总是返回真。

知道这个问题是从哪里来的吗?

提前致谢,A。

【问题讨论】:

    标签: jsp magnolia


    【解决方案1】:

    2 ideas were suggested by Danilo Ghirardelli 这可能是问题的根源:

    1. 公共实例中的权限问题。匿名用户的读取权限 和/或在没有匿名访问的存储库中进行查询搜索。
    2. 公共实例上的索引已损坏,您可能需要重新生成它们。停用并重新激活整个网站可能会解决此问题。

    检查这些可能性后:

    1. 匿名用户的权限是正确的。
    2. 我停用并重新激活了整个网站,它确实成功了!

      • 比第 2 点更好的解决方案是:

    3.a 在作者实例的管理面板中,从“The-Insider”根页面导出所有页面

    3.b 在Public Instance的管理面板中,删除所有页面

    3.c 在公共实例的管理面板中,激活“The-Insider”根页面上的更改

    3.d 在公共实例的管理面板中,导入您在步骤 3.a 中生成的 xml 文件

    一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-14
      • 1970-01-01
      • 2020-05-31
      • 2015-08-22
      • 1970-01-01
      • 2012-01-13
      相关资源
      最近更新 更多