Добавляем в редактор новые формы

1223
Здесь будет описано как добавлять новые формы в редактор, на основе этой информации можно добавить любую форму.
Возьмем за пример, новую форму {показ}|{/показ}
Для того что-бы каждый раз не вписывать код в ручную, добавим его один раз и он будет вызываться автоматически

Пример, о чем идет речь



Нам надо отредактировать всего два файла

1. Вывод формы

Открываем файл cp.php из папки admin/includes

Находим следующий код, строка примерно 1018

Код PHP:
echo   '<option value="pagebreak">-- разрыв страницы --</option>
					<option value="pagetitle">-- новая страница --</option>
				  </select>';
Вставляем следующий код <option value="pokazpods">-- фильтр вслывающая подсказка --</option>, должно получиться
Код PHP:
echo   '<option value="pagebreak">-- разрыв страницы --</option>
		            <option value="pokazpods">-- фильтр вслывающая подсказка --</option>
					<option value="pagetitle">-- новая страница --</option>
				  </select>';
Далее следующий код, строка примерно 1073

Код PHP:
echo '<tr id="pagebreak">';
		echo '<td width="120">
                    <strong>Тег:</strong>
              </td>';
        echo '<td>
                    {pagebreak}
              </td>';
              
        echo '<td width="100">'.$submit_btn.'</td>';
    echo '</tr>';
Добавляем следующий

Код PHP:
echo '<tr id="pokazpods">';
		echo '<td width="120">
                    <strong>Тег:</strong>
              </td>';
        echo '<td>
                    {показ}|{/показ}
              </td>';
              
        echo '<td width="100">'.$submit_btn.'</td>';
    echo '</tr>';
Должно получиться так

Код PHP:
echo '<tr id="pagebreak">';
		echo '<td width="120">
                    <strong>Тег:</strong>
              </td>';
        echo '<td>
                    {pagebreak}
              </td>';
              
        echo '<td width="100">'.$submit_btn.'</td>';
    echo '</tr>';
    
    echo '<tr id="pokazpods">';
		echo '<td width="120">
                    <strong>Тег:</strong>
              </td>';
        echo '<td>
                    {показ}|{/показ}
              </td>';
              
        echo '<td width="100">'.$submit_btn.'</td>';
    echo '</tr>';
С этим файлом закончили

2. Функционал

Открываем файл common.js из папки admin/js

Находим код, строка примерно 84

Код PHP:
		document.getElementById('pagebreak').style.display = 'none';
Добавляем следующий код document.getElementById('pokazpods').style.display = 'none';
Должно получиться так
Код PHP:
	document.getElementById('pagebreak').style.display = 'none';
		document.getElementById('pokazpods').style.display = 'none';
Далее находим код, строка примерно 128
Код PHP:
if (kind=='pagebreak'){
			text = '{pagebreak}';
		}				
Добавляем код

Код PHP:
if (kind=='pokazpods'){
			text = '{показ}|{/показ}';
		}
Должно получиться так

Код PHP:
if (kind=='pagebreak'){
			text = '{pagebreak}';
		}
		
				if (kind=='pokazpods'){
			text = '{показ}|{/показ}';
		}

Все готово, теперь при добавлении нажатии на вставить, будет автоматически вбиваться {показ}|{/показ}, в окно редактора.

Скачать готовый пример
Фильтр скрыть / показать текст для статей
Комментарии (40)
NIKITA 29 сентября 2011 в 01:50 0
Спасибо! Оперативно. Но в форме подсказки нет. Сделал все как написано, не-вы-хо-дит.
Почему!?
Sergey Platonov 29 сентября 2011 в 02:23 0
а нет ли инструкции как добавить в редактор кнопку добавления картинки (изображения) но немного по другому принципу
жму на кнопку, окошко в котором выбираю путь до картинки маленькой, выбираю путь до оригинала - жму сохранить - в итоге получаю в статье отображается маленькая картинка, и она является ссылкой на большую картинку
NIKITA 29 сентября 2011 в 03:16 0
Может я не понял как добавить код?
Можно в подробностях?
Спасибо!
lucku 29 сентября 2011 в 09:46 +1
Качаем исходник выложил в шапке
xflasherx 29 сентября 2011 в 07:13 0
И снова всё работает отлично единственное что заметил в самой подсказке строка должна содержать не более 20-25 символов иначе описание выходит за рамку. И второе как сделать что бы ссылки в подсказке были кликабельные?
lucku 29 сентября 2011 в 09:59 +1
Не много не в тот блог.
1. нет ограничений на кол-во символов, если у Вас описание выходит за рамку, может что-то сделали не так.
Сейчас сам сделал 300 символов, ни что не куда  не выходит.
2. Добавляем ссылку как всегда из меню редактора добавить/редактировать ссылку.
NIKITA 29 сентября 2011 в 13:07 0
Так и не выводит кнопку вставить, как у тебя на скрине. Может версия редактора не та.?!
FCKEditor Визуальный редактор F. C. Knabben 2.63
Или запрос не тот. От первой части или второй?!
Штука хорошая. Жалко будет не установить.
lucku 29 сентября 2011 в 13:13 +1
Версия инстанта какая 1.8, редактор тот
NIKITA 29 сентября 2011 в 13:23 0
Переключить в визуальный режим. Что и как?
lucku 29 сентября 2011 в 15:42 +1
???
NIKITA 29 сентября 2011 в 21:39 0
В скрипте ява написано.(переключить в визуальный режим. Ну не вылазит у меня в меню "Вставить"
lucku 29 сентября 2011 в 22:14 0
Нажимаем на кнопку источник в редакторе
imprint 29 сентября 2011 в 22:16 0
выделяю текст нажимаю вставить "показать" текст удаляет и ничего не происходит...
lucku 29 сентября 2011 в 22:19 0
текст выделять не надо.
Вы оба файла закинули?
imprint 29 сентября 2011 в 22:24 0
ну да....установил все как писали...только с конца а не с начала...я думаю разницы нет...)))
lucku 29 сентября 2011 в 22:25 0
Что-то не то сделали, в шапки есть исходник.
Можно скачать и заменить файлы
imprint 29 сентября 2011 в 22:28 0
дык...у меня даже если вручную пишу....просто отображается текст {показ}ыыыыыыыыыыыыыыы|1{/показ}
imprint 29 сентября 2011 в 22:27 0
вроде почистил кеш с кнопки в редакторе вставляется....но когда сохраняю статью ничего....
вот в самом начале статьи http://onlinemap.crimea.ua/novosti-v-reklamnom-mire/rex-t-rex-2011-prjamoe-vklyuchenie.html
lucku 29 сентября 2011 в 22:28 0
в поле редактора появляется  {показ}|{/показ}
imprint 29 сентября 2011 в 22:29 0
появляется....только при сохранении отображается просто как {показ}ыыыыыыыыыыыыыыы|1{/показ}
lucku 29 сентября 2011 в 22:31 0
Так и должно быть, так как {показ}|{/показ} не имеет ни какой функции, это просто пример, как можно добавить в форму быстрое редактирования.
imprint 29 сентября 2011 в 22:34 0
а когда всплывающая подсказка должна появится?
imprint 29 сентября 2011 в 22:32 0
tooltip это js файл? его же нужно как то подключить? или там все на css
lucku 29 сентября 2011 в 22:35 0
Вы про фильтр f_tooltip. его не надо подключать, он на js там все внутри лежит, а этот фильтр выводиться
другим способом {показать}пишем текст | пишем подсказку {/показать}
imprint 29 сентября 2011 в 22:39 0
http://onlinemap.crimea.ua/novosti-v-reklamnom-mire/rex-t-rex-2011-prjamoe-vklyuchenie.html вот так получается....при клике просто обновляется страница
lucku 29 сентября 2011 в 22:42 0
Зашел на ваш сайт, у меня работает
imprint 29 сентября 2011 в 22:45 0
под мозилой не работает значит....?
lucku 29 сентября 2011 в 22:46 0
mozilla, IE, opera, хром
Проверил на всех, работает
imprint 29 сентября 2011 в 22:52 0
в опере проверил работает. кстати в Firebug проверил в мозиле по стилям там <span class="tooltip"> не подключился подгружает reset.css
lucku 29 сентября 2011 в 22:55 0
class="tooltip" не влияет на работу, он стоит там для того если Вы захотите задать стиле, только для этого
imprint 29 сентября 2011 в 22:41 0
f_tooltip закинул тоже не выскакивает окно...запрос делать тоже в базу на тултип?
lucku 29 сентября 2011 в 22:42 0
Запрос надо делать для каждого нового модуля
imprint 29 сентября 2011 в 22:55 0
все подключил всплывающий пузырек пока пусть будет так....
imprint 29 сентября 2011 в 23:02 0
ещё вопрос...эти фильтры не действуют в анонсах статьи?
lucku 29 сентября 2011 в 23:04 0
Эти фильтры работают с редактором FCKEditor
Они будут работать и в модулях и в анонсах
imprint 29 сентября 2011 в 23:28 0
жесть та что у меня все не слава богу....не хочет работать в анонсах...
NIKITA 29 сентября 2011 в 23:32 0
У меня эта подсказка в форме та и не вышла. Жаль
imprint 29 сентября 2011 в 23:35 0
у меня глючит по разному....то показывает то не хочет...больше трех слов не отображает...
lucku 29 сентября 2011 в 23:39 0
1. проверил в анонсе не работают фильтры, даже те которые установлены по умолчанию. Тут править надо не фильтр
2. глючит что, фильтр, может со скриптами пересекается
imprint 29 сентября 2011 в 23:43 0
у меня наверное и там пересекается с скриптами...у меня highslide встроен