Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как интегрировать Editor.js в dle?

Как интегрировать Editor.js в dle?


     10.07.2021    Общие вопросы, jQuery, Общие вопросы по PHP, Модули, Хаки    180

вопрос
https://editorjs.io/

Возможно ли интегрировать этот редактор в dle?
Сколько это будет стоить?

Ответа пока нет


12 комментариев

esprittv
Юзер

esprittv - 11 июля 2021 14:06 -

подпишусь на реализацию...
пока писал coderiz и lazydev.. продержали меня 2-3 недели и слились. сказали что может как модуль у себя сделают...но чёт сомневаюсь

TeraMoune
Эксперт

TeraMoune - 11 июля 2021 22:02 -

Есть одна проблемка. Данный редактор хранит инфу в json формате, это значит, что на готовенький сайт такое не поставить. И не известно какие брёвна будут в других моментах.

Более того у редактора очень маленькое количество плагинов (ну этих самых кнопок) их раз два и обчёлся. И придётся дописывать недостающие. А если что-то имело интеграцию в редактор и добавляло функционал тегов то это скорей всего перестанет работать.

doc123eysk
Юзер

doc123eysk - 11 июля 2021 22:11 -

Хорошо, а если взять froalaEdition который уже есть в dle, и допилить функцию которая выводит блоки кнопок при выделение текста. Эта функция уже реализована в этом редакторе, но её почему то нет в dle

TeraMoune
Эксперт

TeraMoune - 12 июля 2021 04:44 -

У меня всё есть

doc123eysk
Юзер

doc123eysk - 12 июля 2021 04:46 -

Немножко не понял, есть что?

TeraMoune
Эксперт

TeraMoune - 12 июля 2021 05:05 -

А не о той функции подумал, ну это к разработчику дле пожалуй. Или ищите инициализацию редактора и читайте документацию там может где-то есть опция которую не задействовали.

doc123eysk
Юзер

doc123eysk - 12 июля 2021 05:12 -

Ну к разработчику движка бесполезно обращаться. По патчам редактора все пересмотрел, этой функции нету. Нашёл код этой функции на официальном сайте редактора, попробовал его вставить, и почему-то пишет что нет лицензии. Хотя сам редактор можно скачать бесплатно, и про лицензию ничего небыло сказано.

Такие вот дела.

TeraMoune
Эксперт

TeraMoune - 12 июля 2021 05:16 -

doc123eysk, Так в редакторе же есть уже функция, её активировать нужно в инициализации. Которая происходит в водном или нескольких файлах в папке движка editor.

Там есть инициализация редактора, а опция активирующая это описана на странице документации.
https://froala.com/wysiwyg-editor/docs/options/#toolbarVisibleWithoutSelection

doc123eysk
Юзер

doc123eysk - 12 июля 2021 06:08 -

TeraMoune, Нет, это не то. на сколько я понял, нужно интегрировать вот эту страку-(плагин)
!function(n,a){"object"==typeof exports&&"undefined"!=typeof module?a(require("froala-editor")):"function"==typeof define&&define.amd?define(["froala-editor"],a):a(n.FroalaEditor)}(this,function(n){"use strict";n=n&&n.hasOwnProperty("default")?n["default"]:n,Object.assign(n.DEFAULTS,{inlineClasses:{"fr-class-code":"Code","fr-class-highlighted":"Highlighted","fr-class-transparency":"Transparent"}}),n.PLUGINS.inlineClass=function(e){var i=e.$;return{apply:function a(n){e.format.toggle("span",{"class":n})},refreshOnShow:function s(n,a){a.find(".fr-command").each(function(){var n=i(this).data("param1"),a=e.format.is("span",{"class":n});i(this).toggleClass("fr-active",a).attr("aria-selected",a)})}}},n.RegisterCommand("inlineClass",{type:"dropdown",title:"Inline Class",html:function(){var n='<ul class="fr-dropdown-list" role="presentation">',a=this.opts.inlineClasses;for(var e in a)a.hasOwnProperty(e)&&(n+='<li role="presentation"><a class="fr-command" tabIndex="-1" role="option" data-cmd="inlineClass" data-param1="'.concat(e,'" title="').concat(a[e],'">').concat(a[e],"</a></li>"));return n+="</ul>"},callback:function(n,a){this.inlineClass.apply(a)},refreshOnShow:function(n,a){this.inlineClass.refreshOnShow(n,a)},plugin:"inlineClass"}),n.DefineIcon("inlineClass",{NAME:"tag",SVG_KEY:"inlineClass"})});


в /engine/editor/jscripts/froala/edition.js там все плагины по этому редактору. Но проблема в том что я не кодер и знаю что где и зачем, а они отличаются давольно сильно. к примеру вот код уже встроеного плагина

doc123eysk
Юзер

doc123eysk - 12 июля 2021 06:08 -


TeraMoune
Эксперт

TeraMoune - 12 июля 2021 06:48 -


doc123eysk,
Нет, это не то. на сколько я понял

Как бы...



А включение\отключение внутренних функций происходит через установки настроек которые описаны тут.

функцию которая выводит блоки кнопок при выделение текста

Это родная функция редактора...

И для активации другого режима панели инструментов нужно задействовать одну или две настройки в инициализации плагина.
toolbarInline - Делает панель инструментов редактора встроенной (то есть при выделении показывает её под курсором)

toolbarVisibleWithoutSelection - Показывает панель инструментов всегда даже если выделения текста не было. (Просто устанавливается курсор и показываются кнопки)

doc123eysk
Юзер

doc123eysk - 12 июля 2021 08:58 -

И правда, все получилось, спасибо)))
https://ibb.co/RSx8C4n

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх