Поиск
Регистрация Авторизация

NRG-DESIGN.RU

ШАБЛОНЫ JOOMLA, WORPRESS, HTML, DRUPAL, MAGENTO & FLASH


Создание кнопок (плагинов) для редактора JCE?
(1 просматривают) (1) гость
ВнизСтр: 1234
ТОПИК: Создание кнопок (плагинов) для редактора JCE?
#840
Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 86
Кто создавал кнопки и плагины для JCE? Вообщем нужно такое:
вставить кнопку в редактор что-бы при нажатии вписывался css класс (короче как пример: стандартная кнопка B [б]пример[/b])
Отзовитесь, кто делал? нужно срочно, по инету пробежался нашел только для ветки 1.0.x (мамботы), а времени разбиратся нету. Заранее спасибо.
seokem
Администратор
Посты: 547
graphgraph
ОффлайнКлик для просмотра профиля
Пол: Муж.Откуда: Рашен-федерашен
Сообщения для Гостей запрещены
 
#844
Re:Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 46
Хе самому интересно))) Кстати если найдешь как сделать отпишись плиз)))
nofear999
Профессионал
Посты: 306
graphgraph
ОффлайнКлик для просмотра профиля
ICQ#: 371728193Пол: Муж.Веб-студия дизайна DesignBoxОткуда: Украина, ЕвпаторияДень рождения: 17/08
Сообщения для Гостей запрещены
NoFear999
DesignBox.com.ua
- создание сайтов Joomla CMS (+VirtueMart), DLE
- СЕО продвижение и раскрутка
- анализ и оптимизация сайта
- web дизайн, дизы сайтов, баннеров, лого и т.п. (много не беру, нравится оч рисовать)))
 
#849
Re:Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 46
Нифига ничего конкретного не нашел!)))(((
nofear999
Профессионал
Посты: 306
graphgraph
ОффлайнКлик для просмотра профиля
ICQ#: 371728193Пол: Муж.Веб-студия дизайна DesignBoxОткуда: Украина, ЕвпаторияДень рождения: 17/08
Сообщения для Гостей запрещены
NoFear999
DesignBox.com.ua
- создание сайтов Joomla CMS (+VirtueMart), DLE
- СЕО продвижение и раскрутка
- анализ и оптимизация сайта
- web дизайн, дизы сайтов, баннеров, лого и т.п. (много не беру, нравится оч рисовать)))
 
#850
Re:Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 86
Итак нашел на Joomlaportal такую статью:
Весьма серьезным преимуществом Joomla перед другими системами является довольно широкие возможности расширения базового функционала системы посредством различного рода расширений. В этой статье мы расскажем, как создать плагин, добавляющий дополнительную кнопку для редактора материалов, по нажатию на которую в редактируемый вставлялся бы некий текст.
О создании кнопки для редактора в Joomla! 1.0 уже все написано. Рассмотрим теперь, как подобную задачу реализовать в Joomla 1.5.
Кнопка редактора является плагином (в Joomla! 1.0.x мамботом) расширения редактора и состоит из двух файлов:
    plg_name.php

    plg_name.xml

где plg_ — это общепринятый префикс для плагинов в Joomla! 1.5, name - имя плагина.

ОСНОВНОЙ PHP-ФАЙЛ ПЛАГИНА
Файл hello.php приведен ниже:
Код:


<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport( 'joomla.plugin.plugin' );
 
class plgButtonHello extends JPlugin
{
       function plgButtonHello(& $subject, $config)
       {
               parent::__construct($subject, $config);
       }
 
       function onDisplay($name)
       {
               $getContent = $this->_subject->getContent($name);
               $js = "
                       function insertHello(editor) {
                               var content = $getContent
                                       jInsertEditorText('{hello}', editor);
                       }
                       ";
               $doc = & JFactory::getDocument();
               $doc->addScriptDeclaration($js);
 
               $button = new JObject();
               $button->set('modal', false);
               $button->set('onclick', 'insertHello(''.$name.'');return false;');
               $button->set('text', 'Hello');
               $button->set('name', 'hello');
               $button->set('link', '#');
 
               return $button;
       }
}?>


Разберем основные моменты. Любой плагин в Joomla 1.5 должен быть наследником от класса JPlugin, а плагин, реализующий кнопку для визуального редактора, должен реализовывать метод onDisplay. Данный метод, в результате своей работы должен вернуть объект, описывающий кнопку для визуального редактора.
В данном примере, для этих целей создается объект $button, и присваиваются минимально необходимые свойства:
    modal — флаг, определяющий, является ли открывающееся окно модальным или нет (т.е. можно ли вернуться в редактор, не закрывая открывшееся окно).
    onclick — обработчик события нажатия на кнопку (вызов JavaScript-функции)
    name — имя кнопки и по совместительству название класса, присваиваемого кнопке (как правило совпадает с именем плагина).
    text — текст, который будет написан на кнопке
    link — ссылка (учитывая, что мы добавляем на кнопку обработчик события OnClick - ссылку делаем пустой, проставляя в качестве значения символ #)

Чуть выше определения объекта кнопки, можно заметить объявление JavaScript-функции, которую мы обозначили обработчиком события нажатия кнопки. Данная функция выполняет одно простое действие - вставляет тег {hello} в текущую позицию курсора редактора.
Объявление данной функции добавляется в код текущей страницы посредством вызова метода addScriptDeclaration у объекта типа JDocument, описывающего текущую страницу.
Вот собственно и все. Если указанные два файла упаковать в архив и установить, при редактировании материалов Joomla под редактором появится еще одна кнопочка, по нажатию на которой в поле редактора будет вставляться тег {test}.
Статья: Создание кнопки для визуального редактора в Joomla 1.5
Оригинал статьи: Создание кнопки Joomla!
Скомпилированный мною плагин:
Вложения:

Файл: plg_hello.zip
Размер: 1883 байт


Итак плагин работает, выводя на страницу код:
Код:

{hello}

при желании можно вставить свой код...
Но вопрос остался прежним, не могу догнать как вывести вместо {hello} следующее:
Код:

<span class="info"><a href="">Демо</a></span></p>

Притом что-бы работало так, вставляешь в контент ссылку к примеру:
Код:

http://nrg-design.ru

после выделяешь ее и нажимаешь на созданную нами кнопку, и получаем вот такое:
Код:

<span class="info"><a href="http://nrg-design.ru">Демо</a></span></p>


Перепробовал уже все, не фурычит так вообще, кто хорошо php знает или js?
seokem
Администратор
Посты: 547
graphgraph
ОффлайнКлик для просмотра профиля
Пол: Муж.Откуда: Рашен-федерашен
Редактирование: 06/05/2009 16:30 Кто - seokem.
Сообщения для Гостей запрещены
 
#851
Re:Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 46
Оу))))) Норм статья, правда на твой вопрос ответить не могу это js не php
nofear999
Профессионал
Посты: 306
graphgraph
ОффлайнКлик для просмотра профиля
ICQ#: 371728193Пол: Муж.Веб-студия дизайна DesignBoxОткуда: Украина, ЕвпаторияДень рождения: 17/08
Сообщения для Гостей запрещены
NoFear999
DesignBox.com.ua
- создание сайтов Joomla CMS (+VirtueMart), DLE
- СЕО продвижение и раскрутка
- анализ и оптимизация сайта
- web дизайн, дизы сайтов, баннеров, лого и т.п. (много не беру, нравится оч рисовать)))
 
#853
Re:Создание кнопок (плагинов) для редактора JCE? 3 год назад Репутация: 7
чего то я не совсем понял, а где в редакторе должна появится кнопочка новая??
з.ы. Все, нашел... только хотелось бы конечно чтоб эта кнопка появлялась в самом редакторе а не под ним, и в виде картинки...будем искать и пробовать.
Soshi
Почти профи
Посты: 81
graphgraph
ОффлайнКлик для просмотра профиля
Редактирование: 06/05/2009 17:56 Кто - Soshi.
Сообщения для Гостей запрещены
 
ВверхСтр: 1234
Модераторы: , Flammend, zikkurat

Additional content