Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 45 Ответов
  • 2819 Просмотров
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Здравствуйте))

Joomla 3.3
Есть mod_custom, переделанный

Действия: менеджер модулей -> создать -> htm-код

Чего хочу:
Чтобы у создаваемого модуля в визуальном редакторе уже присутствовала html-разметка, с текстом, тегами и классами
И чтобы выполнился еще 1 php-скрипт ...
И еще один при сохранении (до кучи) :)

Подскажите пожалуйста, где и каким образом это можно сделать?

Спасибо))
« Последнее редактирование: 16.09.2014, 19:18:26 от fbr »
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #1 : 16.09.2014, 21:00:05 »
а может просто написать свой модуль?
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #2 : 16.09.2014, 21:05:32 »
Угу, к этому дело и движется ))
Но это вопроса все равно не снимает

очень не хочется (не умею) писать админку ..
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #3 : 16.09.2014, 21:07:30 »
Написать плагин который будет вставлять код в HTML редактор при создании модуля/хакать ядро!
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #4 : 16.09.2014, 21:11:39 »
На какое событие?
И как вообще вставлять что-то в редактор? js? php?
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #5 : 16.09.2014, 21:22:49 »
Плагин на событие onContentPrepareForm
ещё вариант (если нужно для одного сайта)
переопределить шаблон для админки: все что в administrator/components/com_modules/views/module/tmpl/
поместить в administrator/templates/шаблон_админки/html/com_modules/
в файле edit.php
добавить код:
Код: php
if ( $this->item->id == 0 ) {
//здесь что то выполните нужный вам один php скрипт
$this->form->setValue( 'content', null, 'Нужный вам код который будет появляться при создании нового модуля' );
}
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #6 : 16.09.2014, 21:36:16 »
Блин, заманчиво, конечно))) костыль для одного сайта ...
я уже пробовал в administrator/components/com_modules/models/forms/module.xml
напрямую default= добавлять...

Так, а если без хака, написать модуль? В какой файл вставлять скрипты? Я бэкэнд не писал .. только переделывал
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Нужно доработать модуль html-код
« Ответ #7 : 16.09.2014, 21:42:06 »
Хмм, я бы сделал клоника mod_custom под частный случай, вряд ли добавляемый php-скрипт будет универсален для всех проектов. Зато этот клоник можно потом таскать из проекта в проект, модифицируя php-вставку под каждый частный случай.
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #8 : 16.09.2014, 21:45:20 »
Хмм, я бы сделал клоника mod_custom под частный случай, вряд ли добавляемый php-скрипт будет универсален для всех проектов. Зато этот клоник можно потом таскать из проекта в проект, модифицируя php-вставку под каждый частный случай.
честно говоря не понял
Сделать свой mod_my_html не проблема
Проблема (для меня) дописать для него админку

В общем-то вопрос, по большому счету так и стоит: какие файлы и куда надо добавить, чтобы иметь возможность в админке модуля  выполнять свои скрипты.
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #9 : 16.09.2014, 21:46:32 »
Предлагаю сделать системный плагин (у меня в подписи ссылка на создание каркаса плагина)
в него вставить код  после установки:
Код: php
public function onContentPrepareForm( $form, $data )
{
if ( empty( $data->id ) && isset( $data->module ) && $data->module === 'mod_custom' ) {
$data->content = '123';
}
}
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Нужно доработать модуль html-код
« Ответ #10 : 16.09.2014, 21:49:42 »
Предлагаю сделать системный плагин (у меня в подписи ссылка на создание каркаса плагина)
в него вставить код  после установки:
Код: php
public function onContentPrepareForm( $form, $data )
{
if ( empty( $data->id ) && isset( $data->module ) && $data->module === 'mod_custom' ) {
$data->content = '123';
}
}
и чтобы '123' бралось из параметра плагина типа raw

В чем именно проблема в части админки?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Нужно доработать модуль html-код
« Ответ #11 : 16.09.2014, 22:08:54 »
В общем-то вопрос, по большому счету так и стоит: какие файлы и куда надо добавить, чтобы иметь возможность в админке модуля  выполнять свои скрипты.
Можно создать кастомный тип поля, подключить его в XML файле админки и в нем необходимые скрипты выполнить. И визуальный редактор можно хелпером подключить, наверняка есть возможность его кастомизировать даже..
интернет-блог: http://websiteprog.ru
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #12 : 16.09.2014, 22:12:00 »
Спасибо, Istaan
Попробую сделать так, я и сам думал про плагин. Только уже для модуля mod_my_custom ..

Вообще взял за базовый mod_custom, потому думал обойтись малой кровью,
Ну вот, обошелся. Писать плагин и модуль

На самом деле мне нужно в админке заполнять таблицу (форму), с возможностью динамически добавлять нужное количество строк.
А как писать админку не знаю, вот и пытался сделать таблицу в редакторе, а при загрузке модуля ее распарсить...

На вашем сайте бывал много раз, но про админку для модуля там вроде бы ничего нет
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #13 : 16.09.2014, 22:17:20 »
Можно создать кастомный тип поля, подключить его в XML файле админки и в нем необходимые скрипты выполнить. И визуальный редактор можно хелпером подключить, наверняка есть возможность его кастомизировать даже..
это все хак ядра

кого? JCE кастомизировать??

Цитировать
В чем именно проблема в части админки?
никогда сам не писал админку
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Нужно доработать модуль html-код
« Ответ #14 : 16.09.2014, 22:23:31 »
это все хак ядра
Какого ядра модуля чтоли? и JCE и TinyMCE легко подаются кастомизации..
интернет-блог: http://websiteprog.ru
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #15 : 16.09.2014, 22:32:18 »
Похоже мы про разные админки говорим
Все что лежит в modules/mod_... - это вывод на фронт, здесь проблем нет
А вот то что лежит в administrator/com_modules и administrator/templates - очень слабо разбираюсь
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Нужно доработать модуль html-код
« Ответ #16 : 16.09.2014, 22:39:24 »
а там почти все так же, что и во фронте, только возможностей побольше.
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Нужно доработать модуль html-код
« Ответ #17 : 16.09.2014, 22:45:02 »
вывод формы там в основном, придется изучить если хотите кастомизирвать
интернет-блог: http://websiteprog.ru
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #18 : 16.09.2014, 22:46:35 »
угу, копаю потихоньку
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #19 : 16.09.2014, 23:22:10 »
Сейчас столкнетесь с проблемой вывода редактора для модуля как в mod_custom, ибо он только для него пашет ! ;)
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #20 : 16.09.2014, 23:26:15 »
вроде так выводится в XML.
нет?

Код: xml
		<field name="content" type="editor"
buttons="true"
description="COM_MODULES_FIELD_CONTENT_DESC"
filter="JComponentHelper::filterText"
label="COM_MODULES_FIELD_CONTENT_LABEL"
hide="readmore,pagebreak"
/>
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #21 : 16.09.2014, 23:33:13 »
Вроде так ) А выводится?)
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #22 : 16.09.2014, 23:34:45 »
Ха в тройке добавили поддержку вывода редактора )
Если не выводит то в XML файл модуля добавьте в секцию extension:
<customContent />
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #23 : 16.09.2014, 23:44:12 »
Здорово! не знал. спасибо))
<customContent /> - работает!
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #24 : 16.09.2014, 23:46:22 »
и шо ему це дало? (с)
плагин все равно надо писать
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
Re: Нужно доработать модуль html-код
« Ответ #25 : 16.09.2014, 23:47:24 »
))))))))
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Нужно доработать модуль html-код
« Ответ #26 : 16.09.2014, 23:59:19 »
плагин все равно надо писать
я бы не стал писать плагин к модулю. Имхо это перебор. Если уж визуальный редактор от ядра не позволяет какие то настройки делать, то подключить его можно всегда вручную создав кастомный типа поля . Возможностей у них очень много, на официальных сайтах есть и документация и свежие дистрибутивы и библиотеки к ним, они не для Joomla написаны и используются во многих фреймворках.. но надо их тоже изучать.

Хотя вру JCE вроде как для Joomla разработан я его с CKEditor почему то перепутал, использовал его и TinyMCE только. Вот у них возможностей очень много.
« Последнее редактирование: 17.09.2014, 00:11:46 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #27 : 17.09.2014, 00:11:57 »
да дело не в редакторе! подключал я TinyMCE в php файл (не joomla)

как в админке (без загрузки модуля на фронте) выполнять php и js скрипты нажав на кастомную кнопку или на кнопку сохранить?

Можете объяснить на пальцах?

пример.
добавить в XML модуля кнопку, чтобы при нажатии на нее выполнился js-скрипт.
или
куда добавить  php-скрипт, чтобы он выполнился при нажатии на Сохранить?
« Последнее редактирование: 17.09.2014, 00:17:47 от fbr »
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Нужно доработать модуль html-код
« Ответ #28 : 17.09.2014, 00:19:49 »
Вроде так ) А выводится?)
кстати, тоже выводится
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Нужно доработать модуль html-код
« Ответ #29 : 17.09.2014, 00:24:44 »
Ну могу подсказать как добавить js код при сохранении формы, впринципе через него можно аяксом выполнить и php скрипт:
в файле edit.php о котором уже писали добавить скрипт:
Код: javascript
Joomla.submitbutton = function(task) {    
    if(task == 'module.apply') {
...//ваш js код
    }
    Joomla.submitform(task, document.getElementById('adminForm'));    
}
« Последнее редактирование: 17.09.2014, 00:28:11 от zomby6888 »
интернет-блог: http://websiteprog.ru
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Доработать плагин импорта полей CFI от joomline

Автор R31rus

Ответов: 1
Просмотров: 205
Последний ответ 21.12.2022, 10:40:11
от R31rus
Модернизировать модуль

Автор kurz

Ответов: 4
Просмотров: 311
Последний ответ 13.09.2022, 15:35:31
от kurz
[SP Page Builder] Модуль ajax contact в модальном окне

Автор TW-WEB

Ответов: 2
Просмотров: 2696
Последний ответ 24.02.2018, 17:34:50
от TW-WEB
Модуль авторизации OpenId

Автор greytm

Ответов: 7
Просмотров: 2966
Последний ответ 04.11.2016, 00:04:31
от KypuHa9_Hora
Как вставить модуль в контент компонента

Автор sava36

Ответов: 21
Просмотров: 18077
Последний ответ 15.06.2016, 09:55:51
от Ilja93