Онлайн-издание с TinyMCE

Используя TinyMCE, ты можешь прямо создавать веб-страницы на своем сайте, войдя в систему на любом компьютере. Создание статических страниц с использованием шаблона, многоразового шаблона, в который вставляется содержимое написанной статьи.

Выбрать шаблон из списка для каждой статьи или изменить его на уже опубликованную статью даже довольно просто - возможность, игнорируемая большинством CMS, хотя и полезна для контекстного дизайна.

Мы выбрали одного из самых популярных интернет-издателей - TinyMCE. Она написана на JavaScript и работает на браузере. Он может вписаться в CMS и является редактором Wordpress по умолчанию. Мы будем связывать его со сценариями, предназначенными для интеграции новых страниц на сайте. В идеале новости.

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

Эта демонстрация с самого начала имеет инструмент для создания URL-адресов, состоящих из ключевых слов, чтобы оптимизировать сайт для поисковых систем, в то время как некоторые широко распространенные CMS, например Joomla, могут сделать это только с помощью плагина!

Как это работает

Система создания страниц состоит из следующих файлов:

Принципы

TinyMCE работает, связывая функции редактирования с объектом формы, текстовой областью. Другие объекты форм добавляются в эту демонстрацию для заголовка, выбора шаблона.

Шаблон представляет собой HTML-страницу или страницу PHP, которая содержит маркеры для вставки заголовка и текста:

Для названия переменная PHP :

<?php title="montitre"; ?> 

Для содержимого слой:

<div id="content">  
</div>

Создать новый шаблон из предложенного шаблона будет легко.

Когда пользователь нажимает кнопку «Сохранить», значения или содержимое объектов формы передаются скрипту store.php скриптом Ajax. Сценарий PHP выполняет следующие действия:

  1. Он вызывает сценарий titleconvert.php для создания URL.
  2. Он загружает шаблон, имя которого ему было дано, записывая его под именем файла, генерируемого titleconvert, имя, которое является последовательностью ключевых слов без акцентов и прописных букв .
  3. Вместо них вставляются заголовок и текст статьи.
  4. Затем статья публикуется и должна быть связана с домашней страницей.

Править уже опубликованную статью

Для возобновления информации на уже опубликованной странице используются те же мощные рациональные выражения, что и для хранения данных на новой странице, образованной копией шаблона.

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

Будущие события

Для того чтобы этот инструмент мог использоваться в производстве, он должен быть разработан и иметь хотя бы один список опубликованных статей, чтобы облегчить его редактирование. Также необходимо автоматически связать статьи на домашней странице сайта.
Такое программное обеспечение, как Wordpress, связывает только последние статьи на домашней странице. Такое решение легко реализовать.

Кроме того, к нему можно добавить множество инструментов: генератор RSS-потоков, sitemap и т.д. Это станет предметом дальнейшей публикации .

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

Использование демонстрации

  1. Извлеките содержимое из архива и разместите его на своем сайте.
  2. Запуск install.php для создания логина и пароля.
  3. Затем она будет автоматически удалена. Чтобы использовать его позже, необходимо загрузить этот файл еще раз.
  4. Запустить editor.php
  5. Введите заголовок и содержимое, выберите шаблон (в демо все они идентичны).
  6. Добавить ссылку на статью на главную страницу.

Загрузить сценарии

Архив содержит дистрибутив TinyMCE, сценарии PHP и примеры шаблонов.

Форум

Вопрос об установке редактора MCE

06-07-2011 22:48:23

клод

Добрый вечер, меня особенно интересует скрипт tuto, опубликованный на сайте для моей ассоциации, я создал скрипт отправки электронной почты и почты членам с tiny в качестве издателя, но я не нашел нигде в Интернете tuto или скрипт для загрузки шаблона страницы или возобновления шаблона, чтобы изменить его, мне кажется, что ваш скрипт отвечает всем моим ожиданиям, но невозможно провести испытания У меня есть только куча сообщений об ошибках, которые, как мне кажется, связаны с частью логина примера: (!) Notice: Undefined index: login in C :\Wamp\www\SOLMCE\editor.php on line 9 Call Stack # Time Memory Function Расположение 1 0.0006 693272 {main} () ..\editor.php: 0 (!) Notice: Undefined index: password in C :\Wamp\www\SOLMCE\editor.php on line 10 Call Stack # Time Memory Function Расположение 1 0.0006 693272 {main} () ..\editor.php: 0 (!) Deprecated: Function session_register () обесценен в C :\Wamp\www\PJ TinyMCE\original script\authorize.php on line 47 Call Stack # Time Memory Function Расположение 1 0.0004 692720 {main} () ..\editor.php: 0 2 0.0011 724608 authorize () ..\editor.php: 19 Спасибо, что спросили меня Добрый вечер Клод
07-07-2011 08:41:42

веб-мастер

Привет Вы запустили сценарий install.php для создания учетной записи? Это не позволяет любому человеку редактировать на вашем сайте...
07-07-2011 08:58:44

клод

Здравствуйте, да, конечно, я прошел через установку, я несколько раз загружал сценарий в разные каталоги и устанавливал эту же проблему, глупый вопрос, почему вы запланировали такую важную систему защиты для вводного tuto?? Вы сами говорите, что это не инструмент производства. Я хотел бы добиться успеха, потому что именно этого мне действительно не хватает для моего приложения Спасибо за ваш ответ Добрый день
07-07-2011 18:00:13

веб-мастер

Очевидно, что вызывает проблемы :
$ulogin= $_SESSION["login"];
$upass= $_SESSION["password"];
Так что переменная $ _ SESSION не инициализирована, а сеанс не открыт, что можно проверить дампом $ _ SESSION. Поддерживает ли ваша конфигурация сеансы? Интеграция защиты необходима, поскольку часть пользователей может использовать программное обеспечение как есть.
08-07-2011 08:25:40

клод

Здравствуйте, извините за беспокойство, я только что поставил сценарий прямо на свой хостинг, и установка без проблем, это мой местный wamp, который находится под вопросом. Счастливого дня и еще раз спасибо за выступление Клод

Отображение цвета текста

26-01-2011 14:29:40

веб-мастер

Здравствуйте, я не смог воспроизвести проблему. Преобразования текста делает редактор TinyMCE, скрипт просто вызывает API редактора. При необходимости функция file_put_contents () в файле store.php может изменить текст .
$n = file_put_contents($filename, $body);
Вы можете добавить параметр, чтобы заставить бинарный режим...
$n = file_put_contents($filename, $body, FILE_BINARY );
Точно так же функцию загрузки в retrieve.php можно изменить :
$content = @file_get_contents($page, FILE_BINARY);
Я не могу его проверить, так как для меня контент честно возвращен.
26-01-2011 12:44:28

Нико

Привет, в первую очередь спасибо за сценарий. Однако я сталкиваюсь с проблемой: после редактирования цветного текста и его сохранения. Цвет текста по умолчанию отображается черным при открытии файла .php в браузере. Я заметил, что в коде есть/. Если я удалю их, цвет снова появится. Ex: <p> <span style = «color: # f0000;»> тест в красном </sраn> <span stan =\» color: # 000080 ;\»> тест в голубом </sраn> </p> ---> появляется красный, нет/но нет синего. У вас есть решение, я искал, но ничего не поделаешь... Спасибо!
26-01-2011 15:31:56

Нико

Привет, спасибо за ответ! Но, к сожалению, это не работает... Я не понимаю.
26-01-2011 16:01:32

веб-мастер

Можно попробовать изменить конфигурацию TinyMCE. Удалить, чтобы увидеть urldecode в store.php :
$content = urldecode($a["content"]);
становится:
$content = $a["content"];
Также нужно знать, изменен ли текст уже в сохраненном файле или при его перезаписи. Для этого нужно посмотреть содержимое файла в редакторе.
26-01-2011 17:07:13

Нико

На самом деле изменение происходит с момента резервного копирования. Я хотел поставить функцию, чтобы снять слэш, но я не слишком много значу, где мне действительно нужно ее найти.
26-01-2011 17:37:42

Нико

К вашему сведению, у меня также был установлен сценарий онлайн-редактирования CKEditor и даже проблемы. Я тестировал их отдельно, скачивая, и они работают правильно.
26-01-2011 18:52:14

веб-мастер

Изменения происходят в store.php на переменной $ content перед этой строкой :
$body = $head.'<div id="content">'.$content.'</div>'.$parts[1];
В данном случае лучше бы использовать функцию stripcslashes после перезагрузки по retrieve.php
$content = @file_get_contents($page);
$content = stripslashes($content);
26-01-2011 21:06:24

Нико

Что ж, я хорошо добавил: $ content = stripslashes ($ content); после $ content = @ file _ get _ contents ($ page); в retrieve.php, но это действительно не хочет! В любом случае спасибо за ответы и оперативность!
26-01-2011 21:20:28

Нико

О, да! У меня не было теста, есть что делать! Когда я редактирую свою просто сохраненную страницу с помощью редактора tinymce. Цвет текста отображается правильно. с кодом: <p> <stran style = «color: # f0000;»> Цветовой тест <br/> </stran> </p> Но если я показываю созданную страницу в браузере, цвет исчезает... Код становится: <sраn # ff0000 ;\=»» style = «»> Color test <br/> </sраn> (отсутствует стиль цвета!)
27-01-2011 09:39:32

веб-мастер

Не могли бы вы рассказать мне, какова версия PHP? Я получаю несколько запросов по одной и той же проблеме в течение нескольких дней, когда скрипт хорошо работает для меня, также я подозреваю изменение функций PHP.
27-01-2011 10:04:56

Нико

Здравствуйте, Итак, версия PHP: PHP Версия 5.2.6-1 + lenny9
27-01-2011 17:33:04

веб-мастер

После нескольких испытаний на разных хостингах я делаю следующее: Замените в store.php :
$n = file_put_contents($filename, $body);
по:
$nfile = fopen($filename, 'w'); 
$n = fwrite($nfile, stripslashes($body)); 
fclose($nfile);
Я выложу новую версию.
27-01-2011 18:39:20

Нико

Ну, это идеально! Это работает! Большое спасибо! Нико.