【问题标题】:CKEditor: Editing templates (e.g. PHP, JSP, ASP, ... i.e. non-standard HTML)CKEditor:编辑模板(例如 PHP、JSP、ASP,...即非标准 HTML)
【发布时间】:2011-01-26 02:19:07
【问题描述】:

大家好!我正在使用 CKEditor 开发this plugin to edit PHP pages(请观看演示视频了解更多详情;o)。如果我尝试在 <pre> 标记内插入 PHP 代码以便在该页面内呈现代码,一切正常。

事实上,我需要将 PHP 代码直接插入到目标网页的代码中(嗯,它确实是一个 PHP 页面......),因为这个想法是插入 PHP sn-ps,稍后将在服务器端进行评估和扩展。

this demo video 中,您可以看到,一旦我将 PHP 代码直接插入 <div> 标记内(即在源代码模式下)并再次切换回源代码模式,然后整个 PHP 块被清理,因此被  实体替换。如果插件在按下 Ok 按钮后尝试插入相同的 sn-p(即在 WYSIWYG 模式下),也会发生同样的情况。

所以问题是:

  1. 是否可以做一些事情来指示CKEditor不要混淆 PHP 阻塞?
  2. 是否有人提供解决此问题的提示或方法?

提前致谢!

【问题讨论】:

    标签: php javascript ckeditor


    【解决方案1】:

    使用config.protectedSource 设置,页面甚至列出了如何将它与 PHP 一起使用

    【讨论】:

    • 嗨!我试过这个,它在 WYSIWYG 和源代码之间来回切换时有效。所以谢谢,我取得了一些进展。但是,当使用对话框并尝试使用 CKEDITOR.dom.element.setHtml()div 元素(即节点)中插入 PHP 代码时,它仍然会混淆 PHP sn-p 并插入  而是实体。我应该使用其他功能吗?哪一个?
    • 首先,你的问题只是在没有进行特殊处理的情况下,浏览器是对PHP标签的误解,所以你需要保护那种内容才能保存和阅读它。如果您想创建这样的编辑器,那么您必须直接使用受保护的内容,以便在您想要编辑它时阅读它,并在您想要保存它时再次对其进行编码。所以第一步是在源代码模式下加载一些 PHP 代码,然后看看它在设计模式下是如何可用的,然后当你想保存它时,你只需要按照相反的步骤操作。
    • 感谢指针。我终于设法完成了,你可能会看到这个演示(youtube.com/watch?v=OhKIofzLAp0),顺便说一句。唯一的副作用是不再支持复制和粘贴操作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-04
    • 1970-01-01
    • 2010-12-14
    • 2012-08-28
    • 2014-03-25
    • 1970-01-01
    相关资源
    最近更新 更多