Tôi đang sử dụng CKEditor với BBCode plugin và tôi cần thêm thẻ tùy chỉnh như thẻ spoiler
và thẻ khác sẽ cung cấp khả năng liên kết đến hồ sơ của người dùng trang web.
spoiler
thẻ sẽ hoạt động như thẻ : nhấp vào nút và nhận mã. Tôi đã sao chép blockquote/plugin.js
và đã thay đổi tất cả các chuỗi thành spoiler
và quote
thành spoil
. Sau đó, tôi đã thêm extraPlugins: 'spoiler'
vào cấu hình và nút trên thanh công cụ. Nó xuất hiện một cách chính xác, nhưng nó tạo ra một mã sai.
Ví dụ, nếu tôi nhấp vào nút blockquote sau khi chọn một văn bản, đoạn code sau được tạo ra:Thẻ tùy chỉnh trong plugin CKEditor BBCode
[quote]some text[/quote]
nhưng khi tôi bấm nút mới của tôi, tôi nhận được đoạn mã sau:
<p>
<spoiler>
<p>
!!!</p>
</spoiler></p>
Vì vậy, nó không hoạt động.
Tôi cũng muốn tạo nút để liên kết với người dùng. Nó sẽ hoạt động như thế này: sau khi nhấp vào nút, một hộp thoại sẽ hiển thị với một trường tìm kiếm (AJAX không phải là một vấn đề), và kết quả sẽ là một danh sách người dùng; khi một người sử dụng sẽ được lựa chọn và nút OK
sẽ được bấm, nó sẽ tạo ra một mã như sau:
[user=1]Admin[/user]
1 - id của người dùng, quản trị - tên của mình.
Bạn đang sử dụng phiên bản CKEditor nào? –
Bạn rất có thể muốn chỉnh sửa ['plugins/bbcode/plugin.js'] (https://github.com/ckeditor/ckeditor-dev/blob/master/plugins/bbcode/plugin.js). Có hai biến ở đó, bbcodeMap và convertMap. Plugin này chuyển HTML thành BBCode, vì vậy bạn sẽ muốn thêm một định nghĩa mới cho thẻ 'spoiler' của bạn. – timgws