如何在ExpressionEngine(前端)中获取注释的原始代码?
问题是:如果评论包含代码或HTML,如[quote] -Tags,则ee-native {comment} -Tag会将其呈现为<blockquote>Life is like a box of…
...但是如何获取原始代码,如{ {1}}?
我目前正在为原生EE评论开发一个Quote-Feature(前端/ JavaScript)。到目前为止,我已经使用过jQuery.text()或.html()...但两种方式都没有标记(.text())或html标记(.html())。 有没有办法获取原始注释代码(例如,数据属性或脚本标记)以便以后使用JavaScript?
编辑(1):我尝试过SQL - 这是唯一/最好的方法吗?
[quote]Life is like a box of…
编辑(2): SQL工作正常,但如果原始注释代码中有<blockquote data-raw="{exp:query sql="SELECT exp_comments.comment AS comment_raw FROM exp_comments WHERE exp_comments.comment_id = {comment_id} "}{comment_raw}{/exp:query}">
{comment}
</blockquote>
,整个事情就会中断,因为浏览器认为这是结束引用«data-raw» - 属性: - /有没有办法'掩盖'所有字符? ("
和"
以及'
和<
等。)
编辑(3):我现在使用>
- 标签插入{comment_raw}代码,这样字符就不会打扰。
答案 0 :(得分:0)
您可能最好通过ajax调用检索原始注释,而不是为页面上的每个注释添加查询。您可以避免性能损失,也不必担心在数据属性中存储大字符串。我可能会做这样的事情:
使用{exp:query}
WHERE comment_id = '{segment_X}'
标记的新“get_comment”模板
当用户点击回复/引用按钮时,使用jQuery.get()向您的get_comment模板发送请求,并根据回复按钮上的data-commentid
属性传入comment_id。
使用.get()响应更新输入值。