我想分享一些我在ModX网站上制作的ModX模板代码。我可以使用<pre>
将html粘贴到正常状态,但是块(例如[[$footer]]
[[$header]]
和占位符(例如[[*content]]
)仍显示为ModX占位符,这意味着我看到{[[$header]]
的内容1}}而不仅仅是代码。
有没有人知道我可以在ModX资源中显示占位符和块代码/钩子?
答案 0 :(得分:2)
您可以使用相关的HTML代码替换括号,以防止它们被MODX解析。
[[
变为[[
]]
变为]]
如果您需要定期执行此操作,您可能会考虑编写一个插件来为您执行此操作,也许每当您保存资源时都会运行字符串替换。
答案 1 :(得分:1)
这是okiyanet更详细地提到的解决方案。创建一个代码段convertModxTags
并将此代码放在其中:
<?php
$output = str_replace('[[','[[',$input);
return $output;
然后在模板中调用它:
[[!convertModxTags?&input=`[[*content]]`]]
或
[[*content:convertModxTags]]
答案 2 :(得分:0)
看一下Revo的这个插件: http://www.modx360.com/blog/2010/02/12/prevent-parsing-modx-tags/
将其创建为PlugIn,不要忘记提示: OnLoadWebDocument OnWebPagePrerender OnBeforeSaveWebPageCache
将您的REVO-MODX代码粘贴到两个代码元素之间的页面上。
答案 3 :(得分:0)
有两个额外的东西可以帮到你:
FixedPre插件将在fixedpre标签内显示MODX和HTML标记。
SyntaxHighlighter插件或代码段也会执行相同操作,但也会突出显示代码并将其放在单独的块中。