Интегриране на медиен елемент в Ckeditor

Имам малко проблеми с редактора wysiwig ckeditor. Докато се опитвах да избягам от всякакви флаш базирани медийни плейъри, попаднах на MediaElement (http://mediaelementjs.com/), който беше предложен като добра алтернатива за възпроизвеждане на аудио и видео ( http://drupal.org/node/1035630 ).

Има ли лесен начин за интегриране на този плейър в медиен плъгин? Предполагам, че трябва да има начин да се замени флаш базиран плейър с медиен елемент..?

мисли?


person user1535191    schedule 18.07.2012    source източник


Отговори (1)


Можете да създадете персонализиран плъгин на базата на флаш плъгина.

Главните букви са от значение, ето ръководството за стил: Насоки за стил на кодиране http://docs.cksource.com/FCKeditor_3.x/Design_and_Architecture/Coding_Style

Копирайте директорията _source/plugins/flash и я преименувайте, нека я наречем mediaelement.

Поставете преименуваната директория тук /plugins/mediaelement.

След това преименувайте /plugins/mediaelement/dialogs/flash.js на mediaelement.js.

Добавете вашето изображение на бутона на лентата с инструменти 16px X 16px към директорията /plugins/mediaelement/images/.
Знам, че .png файловете работят, не съм пробвал други.


Конфигурация:
Заредете новия плъгин във вашата конфигурация:

config.extraPlugins = 'mediaelement';

Добавете бутона към настройката за конфигурация на лентата с инструменти 'MediaElement'

config.toolbar_xxx

Файлови модификации
Ще трябва да промените препратките към името и файловете на приставката „flash“. Ето минималните промени, необходими за зареждане на приставката и отваряне на диалоговия прозорец:

plugins/mediaelement/dialogs/mediaelement.js (174)

CKEDITOR.dialog.add( 'mediaelement', function( editor )

plugins/mediaelement/plugin.js (22 - 33)

  CKEDITOR.plugins.add( 'mediaelement',
  {
    init : function( editor )
    {
      editor.addCommand( 'mediaelement', new CKEDITOR.dialogCommand( 'mediaelement' ) );
      editor.ui.addButton( 'MediaElement',
        {
          label : 'Media Element',
          command : 'mediaelement',
          icon: this.path + 'images/mediaelement_btn.png'
        });
      CKEDITOR.dialog.add( 'mediaelement', this.path + 'dialogs/mediaelement.js' );

Тук има няколко урока за създаване на добавки:
http://docs.cksource.com/CKEditor_3.x/Tutorials

Те ще ви дадат представа за структурата и необходимите елементи. Научих това, като прегледах уроците, докато работех с копие на съществуващ плъгин, отне известно време, но повечето от това, от което се нуждаете, е там.

Уроците съдържат информация за създаването на диалогови прозорци и използваните параметри, те ще ви помогнат да разберете какво се случва във файла plugins/mediaelement/dialogs/mediaelement.js.

Можете да промените диалоговия файл, за да съдържа полетата, използвани от изпълнението на MediaElement. Предлагам ви да сравните кода за вграждане за флаш с този, използван за медийния елемент, за да видите кои части съответстват една на друга и съответно да модифицирате диалоговия файл.

person codewaggle    schedule 18.07.2012
comment
Така че всичко, което трябва да направя, е да променя всяка препратка, която преди това е казвала flash, на mediaelement във файла plugin.js? Къде всъщност мога да препратя файловете на плейъра на медийни елементи в диалоговия прозорец? - person user1535191; 18.07.2012
comment
Трябва да разгледате контекста за всяко появяване на думата flash във файловете, за да решите как трябва да бъде заменена. Диалоговият файл трябва да бъде преименуван от flash.js на mediaelement.js. Той създава диалоговия прозорец с полетата, които бихте използвали за различните настройки. Ще трябва да го промените, за да работи със специфичните настройки на медийния елемент. Би било полезно, ако прегледате уроците, за да разберете какво е важно за вашата ситуация. Ще разгледам файловете и ще добавя някои бележки към отговора си. - person codewaggle; 19.07.2012
comment
Изключително съм благодарен за цялата ви помощ! Всъщност прегледах уроците на връзката към ckeditor, която изпратихте, просто ми се стори малко гръцка. Всякакви бележки/файлове, които можете да ми хвърлите, ще бъдат много оценени!! - person user1535191; 19.07.2012
comment
Забравих да спомена, че в mediaelement.js има куп от тези editor.lang.flash.xxx изрази. Те се използват за разрешаване на различни езици, той използва правилния lang файл въз основа на потребителския език, но ще трябва да добавите думите към всеки lang файл, за да работи. Най-лесният начин е да замените тези сегменти с действителния текст, който искате да покажете в кавички. И така, editor.lang.flash.xxx става "New Text". - person codewaggle; 19.07.2012
comment
Чувствайте се свободни да задавате въпроси, ако се затрудните. Може да искате да отворите нов въпрос относно конкретни проблеми, които имате при създаването и внедряването на приставката, мисля, че на въпроса ви дали е възможно да се интегрира плейърът MediaElement е отговорено. - person codewaggle; 19.07.2012
comment
Вземете малко повече репутация и можете да се присъедините към чат дискусии, сега имате 11, имате нужда от 20. Може да е полезно, тъй като претрупва нещата с текущите коментари и те са трудни за четене и форматиране. - person codewaggle; 19.07.2012
comment
Оценявам всички ваши полезни коментари, много ценя! - person user1535191; 26.07.2013
comment
Някой успя ли да направи това? Ако е така, може би си струва да го пуснете в общността! Търсех същото. - person Ravish Bhagdev; 13.05.2015
comment
@RavishBhagdev Да, ако следвате инструкциите в отговора и погледнете коментарите, можете да създадете свой собствен персонализиран плъгин. Оригиналният плакат успя да го направи, те бяха нови и не разбраха, че трябва да приемат отговора. - person codewaggle; 13.05.2015