0

我已经在这个问题上玩了一段时间了,但我无法理解它。我正在使用 Liferay 6.1 CE GA2。

目标:

用户可编辑的内容,例如每页中的页脚。我创建了 id 为 12701 的 Web 内容。

方法

#set ($local_temp_content = $journalContentUtil.getContent($scope_group_id, "12701", null, "$locale", $theme_display))
$local_temp_content<br />

问题: 它不会返回任何合理的东西。结果只是打印“$local_temp_content”。

任何指针如何调试这个问题?

4

2 回答 2

1

这是一个速度宏,用于首先从本地范围按 ID 检索 Web 内容,然后按全局范围检索 Web 内容:

#macro(glarticle $temp_article_id)

    #set ($temp_content = "")

    #set ($scope_group_id = $theme_display.scopeGroupId)
    #set ($global_group_id = $theme_display.companyGroupId)

    #set ($temp_content = $journalContentUtil.getContent($scope_group_id, $temp_article_id, null, "$locale", $theme_display))
    #set ($temp_content = "$!{temp_content}")

    #if ($temp_content.length() == 0)
        #set ($temp_content = $journalContentUtil.getContent($global_group_id, $temp_article_id, null, "$locale", $theme_display))
    #end

    $!{temp_content}
#end

如何使用它:

#glarticle('1234')
于 2014-01-02T09:03:29.673 回答
0

为了调试速度,请尝试输出通话的每个部分。

scope_group_id = $scope_group_id<br>
theme_display = $theme_display<br>
journalContentUtil = $journalContentUtil<br>

如果您得到的正是您所写的,那么该变量将不可用。
如果一切都解决了,那么可能是:

  • 错误的文章ID
  • 文章渲染过程中出现异常(您应该检查日志)
于 2014-01-02T09:43:10.803 回答