Модуль Blogger API

Blogger API (Application Programming Interface) это интерфейс или "протокол", с помощью которого другие программы могут удаленно взаимодействовать с вашей системой публикации. На практике эта функция разрешает вам отправлять записи на Blogger API - совместимый сайт через внешнюю программу.

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

Панель управления

Панель управления Blogger API доступна на странице Модули > Blogger API в вашей панели управления. Здесь вы можете настроить различные конфигурации для использования с интерфейсом Blogger API.

На основной странице модуля перечислены все существующие конфигурации, а также URL, которые используются для соединения с каждой конфигурацией из вашей Blogger API совместимой программы.

Настройки конфигурации, прежде всего, касаются отправки записи из ExpressionEngine в Blogger API совместимую программу. Следующие настройки доступны для каждой конфигурации.

Имя конфигурации

Имя для вашей конфигурации, которое отображается в основной таблице.

Поле по умолчанию для содержимого записи

Это поле записи по умолчанию, которое используется для записей, отправленных через Blogger API. Если не определено ни одного поля для новой записи, или если отредактированная запись отправляется как блок текста с неопределенными полями, то в это поле будет вставлено содержимое записи. Убедитесь, что выбранное поле доступно для раздела, в который вы собираетесь отправлять записи.

Отправлять записи в виде текстового блока?

Если установлено "Да", то EE, перед отправкой текста в программу клиент, объединит данные ваших полей в один блок текста, без указания полей.

Настройка форматирования текста

Если установлено "Да", ExpressionEngine будет обрабатывать на выходе все pMcode и каталоги файлов, содержащиеся в ваших записях, перед отправкой содержимого в вашу программу клиент.

Примечание: В этой настройке должно быть установлено "Да", если вы будете использовать один из следующих вариантов.

Отправлять настольному клиенту текст в заданном формате?

Эта настройка определяет, будет ли EE обрабатывать содержимое в соответствии с выбранным форматированием поля (то есть xhtml, none, и т.д.), перед отправкой его в вашу программу. Как правило, устанавливается "Нет".

HTML форматирование

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

  1. Разрешить весь HTML: Если выбрана эта опция, то код HTML не изменяется.
  2. Разрешить только безопасный HTML: Настройка разрешает сохранять только "безопасный" HTML (<b>, <i>, <u>, <em>, <strike>, <strong>, <pre>, <code>, <blockquote>, <h2>, <h3>, <h4>, <h5>, <h6>), при отправке содержимого записи вашей программе. Весь другой код HTML будет преобразован в символьные объекты перед отправкой в программу клиент.
  3. Преобразовать HTML в символьные объекты: Все теги HTML будут преобразованы в символьные объекты, пред отправкой в программу клиент.

Соединение с Blogger API совместимой программой

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

Ecto

Чтобы установить соединение с Ecto, вам необходимо знать URL, предусмотренный для вашей конфигурации, а также логин и пароль.

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

MarsEdit

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

Значение ID определяет разделы, категории, и статусы для ваших записей. Эта информация разделяется двоеточиями, а множественные значения каждой отделяются символом ("|"). Например, следующие значения могут использоваться для weblog ID:

1 - основной id раздела
1|3 - множественный id разделов
1:5|8|9 -id раздела с указанием категорий
1:5|8|9:open - id раздела: категории: статус

Если вы отправили новую запись, с ID, имеющим эти настройки, то новая запись во-первых войдет в указанные разделы (если у вас есть несколько разделов). Далее, она будет назначена на все указанные категории.

Создание записи в Blogger API совместимой программе

Существует два подхода, которые используются программами редактирования.

Редактор WYSIWYG

Многие из программ публикации используют WYSIWYG редактор, наподобие Dreamweaver. Если дело обстоит так, то вам, вероятно, необходимо установить такие настройки конфигурации (смотрите раздел панель управления), при которых вы отправляли и получали бы ваши записи, как большой блок текста без указания полей.

В этом случае вам необходимо только создать запись, задать ей название, и при отправке на Blogger API сервер в ExpressionEngine отправит ее в поле по умолчанию, установленное в конфигурации.

HTML/Текстовый редактор

Некоторые программы предлагают HTML или текстовые редакторы, с помощью которых можно эффективнее управлять публикацией содержимого. В этом случае, вы имеете большую гибкость в определении того, как, запись будет отправлена (опубликована), указывая некоторые детали в самой записи. Вы можете использовать следующие "теги" в вашей записи, для определения того, как ExpressionEngine будет обрабатывать запись.

Categories
Вы можете назначить запись в указанные категории. Вы можете использовать идентификатор (ID) категории или фактическое имя категории, отделяя несколько категорий символом ("|").

<category>1|Blogging|Fun Stuff|12.</category>

Fields
Вы можете определить, как контент будет размещен в различных полях.

<custom_field_name>This is summary text.</custom_field_name>
<another_field>This is body text.</another_field>

ПРИМЕЧАНИЕ: Некоторые короткие имена полей работать не будут, а именно те, которые совпадают с некоторыми тегами HTML, которые фильтруются из соображений безопасности т.е. <body>, <script>, и.т.д.

Sticky
Вы можете указать, должна ли запись быть "прикрепленной".

<sticky>yes</sticky>

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

<title>Posting is Fun!</title>

Weblog ID
Если у вас указано несколько разделов в вашем Weblog ID (выше), то вы можете указать для использования конкретный weblog_id, вместо того, чтобы просто использовать первый по умолчанию.

<weblog_id>5</weblog_id>

Наверх страницы