有什么办法可以自定义 BBCode 吗?
Is There Anyway To Make Custom BBCode?
我有自己的论坛,目前我有编辑、删除和报告 post 和回复等功能,但现在我想添加 BBCode 等功能。现在我只想尝试 [QUOTE][/QUOTE] 功能,如果用户选择引号按钮,它将采用引号 post,将其放在文本区域中,文本周围有引号。然后在提交时,页面会显示引用人员的姓名和引用以及用户 post.
例如[QUOTE name=Jane]这是引用[/QUOTE] 你好。
"Originally posted by Jane: This is a quote."你好
我确定我可以使用 JavaScript / AJAX 来引用用户并将他们的 post 放在带有 [QUOTE] 标签的文本区域中,但不确定是否有它在页面加载时显示,如我提到的示例。
如果我能让它工作,我可以扩展其他 BBCode,但现在这是我想要的主要功能。
使用 third-party BBCode 解析器可能比自己编写解析器更容易,然后使用配置来禁止其他格式选项,或者从文本中删除这些标签。
如果您选择编写自己的解析器,我推荐 test-driven 方法。处理转义字符之类的事情可能会很棘手,而且通常存在您可能无法立即发现的极端情况。
我有自己的论坛,目前我有编辑、删除和报告 post 和回复等功能,但现在我想添加 BBCode 等功能。现在我只想尝试 [QUOTE][/QUOTE] 功能,如果用户选择引号按钮,它将采用引号 post,将其放在文本区域中,文本周围有引号。然后在提交时,页面会显示引用人员的姓名和引用以及用户 post.
例如[QUOTE name=Jane]这是引用[/QUOTE] 你好。
"Originally posted by Jane: This is a quote."你好
我确定我可以使用 JavaScript / AJAX 来引用用户并将他们的 post 放在带有 [QUOTE] 标签的文本区域中,但不确定是否有它在页面加载时显示,如我提到的示例。
如果我能让它工作,我可以扩展其他 BBCode,但现在这是我想要的主要功能。
使用 third-party BBCode 解析器可能比自己编写解析器更容易,然后使用配置来禁止其他格式选项,或者从文本中删除这些标签。
如果您选择编写自己的解析器,我推荐 test-driven 方法。处理转义字符之类的事情可能会很棘手,而且通常存在您可能无法立即发现的极端情况。