В свое время одной из отличительных особенностей E-Xoops, была возможность использовать для публикаций новостей локального клиента w.Bloggar. Прошло время, для многих систем стало нормой применять XML-RPC для обновления контента сайта. К сожалению, русскоязычные пользователи E-Xoops, до недавнего времени не могли пользоваться w.Bloggar, из-за проблем с кириллической кодировкой в модуле phpRPC. В данной статье будет описан хак, устраняющий ошибку с кодировкой, а так же основы работы с w.Bloggar. Вкратце о стандарте XML-RPC можно почитать в этой статье.
Для начала нужно сказать, что w.Bloggar представляет собой локальный клиент для публикации сообщений и новостей в различных блогах и CMS. Использование стандарта XML-RPC делает эту программу межплатформенной. w.Bloggar предоставляет удобный интерфейс для обновления новостей на сайте, позволяет вносить изменения и сохранять их локально, а потом переносить изменения на удалённый сервер в удобное время. В качестве XML-RPC-сервера в E-Xoops выступает модуль phpRPC.
Как известно Half-Dead, бывший разработчик E-Xoops, является создателем известного класса phpRPC (к сожалению, разработка заброшена). Использовал он его и при разработке модуля phpRPC.
Нижеследующие изменения в phpRPC написаны для тех, кто любит все делать вручную. Данный раздел можно пропустить, просто скачав по этой ссылкемодифицированные файлы.
Все файлы взяты из дистрибутива RUNCMSv.1 от 2004/05/22
в modules/phpRPC/include/rpc_decoder.php
строка79после
function decode($data) {
вставить
$data = utf8_encode($data);
в modules/phpRPC/library/exoops/metaWeblog/newPost.php
Теперь установите модуль в системе, или если он был установлен, переустановите его.
Важно! После установки модуля phpRPC, необходимо дать доступ к нему анонимным пользователям, иначе нельзя будет подключить w.Bloggar. Еще раз проверьте, чтобы кодировка в настройках модуля была UTF-8
В самом начале необходимо создать аккаунт для подключения к серверу XML-RPC. Вводим логин и пароль, которые Вы использовали при регистрации на сайте (естественно имеется в виду сайт на основе E-Xoops)
Подтверждаем создание аккаунта и переходим в новое окно настроек.
В списке «приложений» выбираем E-Xoops
После этого в поле «название аккаунта» введите произвольное имя, а в поле «Хост» доменное имя вашего сайта.
Обратите внимание, что формат поля «Хост» должен быть: www.yoursite.comа не http://www.yoursite.com иначе будет выдана ошибка. Поле «Сервер» оставляем без изменений, но в нем должно быть указанно: /modules/phpRPC/server.php Остальные поля оставляем без изменений.
Для того чтобы подключить w.Bloggar на локальной машине, в поле «Хост» введите название локального хоста (в 99% это localhost), а в поле «Сервер» путь к файлу server.php начиная с корневой директории вашего виртуального сервера. То есть, если сайт, расположен у Вас в директории ex/, то необходимо указать в этом поле: /ex/modules/phpRPC/server.php
Возможные ошибки
Если вы неправильно введете логин или пароль, то будет выведено следующее предупреждение:
При неправильно указанном доменном имени в поле «Хост», появиться следующее сообщение:
Ну, и если неправильно указать, путь к XML-RPC-серверу в поле «Сервер», увидим вот это:
Если все сделано правильно, то откроется окно программы (в дальнейшем нам уже не придется каждый раз заново подключаться к серверу)
Программа имеет стандартный набор команд, и у работавших с текстовыми редакторами, не должно возникнуть, каких либо затруднений. Единственное отличие в том, что форматирование текста происходит с помощью HTML тегов. Вручную теги вводить не нужно, выделяем фрагмент текста, нажимаем на соответствующую кнопку, и выделенный текст будет заключен в нужные нам теги. Для тех, кто работал с BB-кодом это знакомо. Все кнопки и команды форматирования текста, стандартны и соответствуют своим аналогам из других текстовых редакторов.
В поле редактор, вводим текст, в поле предварительный просмотр можно посмотреть, что из этого получилось.
Как мы помним, статья или новость в E-Xoops (модуль news) состоит из двух частей: введения и основного текста. Этому соответствуют два поля ввода в форме добавления новости на портале. w.Bloggar имеет всего одно поле ввода текста и эти части (вводная и основная) выделяются в нем двумя специальными тегами. Первый парный тег выделяет вводную часть: <hometext></hometext>. Второй: <moretext></moretext>, основную. Если новость небольшая тег <moretext></moretext> можно и не использовать.
Нам не обязательно вводить эти теги вручную – в w.Bloggar мы можем задавать свои, произвольные, теги и после этого вставлять их из меню или с помощью «горячих» клавиш. Это очень удобно. Для нас будет важно, добавить три новых тега. Помимо перечисленных, нам понадобится тег (с маленькой буквы и со скобками) разбивающий текст на страницы, сам тег служит границей разрыва. Или в меню html -> произвольные теги или на панели инструментов выбираем меню добавления своих тегов:
Выбрав команду «Добавить тег» мы перейдем в окошко ввода тегов. Необходимо будет выбрать название тега, «горячую» клавишу, открывающий и закрывающий теги. В случае с закрывающий тег не понадобится.
После этого данные теги можно будет или выбрать в меню или вставить с помощью «горячих» клавиш.
Важной особенностью w.Bloggar является то, что, нам не обязательно подключаться к Интернету, при наборе статьи. Отформатировав текст, мы можем подключиться к Интернету и опубликовать статью, а можем предварительно сохранить ее для публикации в нужное время.
Соответственно мы можем подготовить несколько статей, и только после этого опубликовать их на сайте. Так же мы можем импортировать уже готовый текстовый файл.
После того как статья готова, мы можем поместить ее на сайт двумя способами. Нажав на кнопку «Добавить», и тогда статья будет добавлена в базу данных, но не опубликована на сайте. Или же нажав на кнопку «Добавить & Опубликовать» после этого статья появиться на страницах сайта.
Добавлять статьи на предварительный просмотр администрации могут все зарегистрированные пользователи (если это разрешено в настройках сайта). Публиковать же статьи только пользователи которые имеют права администратора данного модуля (news).
Ну и, наконец, w.Bloggar предоставляет нам возможность редактировать и удалять статьи выбранных разделов. Это возможно только для администраторов данного модуля.
Для начала мы должны выбрать нужный нам новостной раздел:
После этого нажав на кнопку «статьи» мы должны будем выбрать указанное количество новостей для предварительного просмотра
Выбрав из списка указанное количество статей, в открывшемся окошке мы сможем как просмотреть эти новости, так и выбрать необходимое действие с ними.
Соответственно у нас будет выбор или удалить новость (можно выбрать несколько новостей), либо открыть ее для редактирования.
Важно! После редактирования новости, нужно нажать на «Добавить & Опубликовать» а не на «Добавить» иначе отредактированная новость перейдет в категорию ожидающих проверки администратором.
Еще раз хочется повторить, что используя w.Bloggar, публиковать новости на сайте могут не только администраторы, но, если это разрешено в настройках сайта, и зарегистрированные пользователи. Сообщение будет добавляться в базу данных, и ожидать одобрения администратора. Редактировать и удалять статьи, не имея прав администратора модуля news, зарегистрированные пользователи не могут.
На этом краткий обзор w.Bloggar можно закончить. Данная программа, конечно же, не Microsoft Word, но в тоже время реальная альтернатива всевозможным WYSIWYG редакторам, написанным на клиентских языках программирования.