首页 > 解决方案 > OpenCMS 10 开放图元

问题描述

我正在尝试在主模板中打印 Open Graph 元,但我无法获取有关详细信息页面上显示的内容的信息,我只能访问详细信息容器页面。

例如,为了建立 og:image 我在主题的 .config 上创建了一个属性,但我无法从“详细”内容中获取此信息:

<meta name="og:image" content="<cms:property name="mytheme.ogImage" file="uri" default="" />">
<meta name="og:image" content="<cms:property name="mytheme.ogImage" file="search" default="" />">
<meta name="og:image" content="<cms:property name="mytheme.ogImage" file="element.uri" default="" />">
<meta name="og:image" content="<cms:property name="mytheme.ogImage" file="search.element.uri" default="" />">
<meta name="og:image" content="<cms:property name="mytheme.ogImage" file="/.content/blogentries/be_00009.xml" default="" />">

最后一个是唯一有效的,但我不知道如何获取主模板内内容的路径。

我想有一种更简单的方法可以做到这一点,但我没有找到。

先感谢您。

PS:我正在使用 OpenCMS 10.5.4。

标签: jspjstlopencms

解决方案


好吧,在尝试了很多事情之后,我提出的唯一“解决方案”是从数据库中检索资源,直接在 Java 中建立连接,如本例所示

通过这个连接,我做了一个 SQL 查询来查找与当前页面的 javax.servlet.forward.request_uri 相关的资源。一旦我有了资源(包括它的文件名),我就可以得到它的属性<cms:property name="mytheme.ogImage" file="${filename}" default="" />


推荐阅读