XML формат пользователей
ExpressionEngine использует специальный формат XML для данных пользователей.
<members>
<member>
<username>brettb</username>
<screen_name>Brett Bretterson</screen_name>
<password type="md5">653132ffd94b986bf2bb806b3c67d190</password>
<email>brett@example.com</email>
</member>
<member>
<username>robr</username>
<screen_name>Robert Robertson</screen_name>
<password type="sha1">1b4395b877794a16a7f4db5747380dbaafc7ff18</password>
<email>robert@example.com</email>
</member>
</members>
Теги XML идентичны соответствующим полям в базе данных из таблицы exp_members. Разрешены все поля, за исключением "unique_id".
ПРЕДУПРЕЖДЕНИЕ: Тег <member_id> вынуждает утилиту импорта перезаписывать любых существующих пользователей с таким же идентификатором (ID). Вообще, не рекомендуется использовать тег <member_id> для переноса пользователей из одной системы в другую, так как ExpressionEngine может автоматически создать новые уникальные идентификаторы (ID) для каждого пользователя, не перезаписывая существующих пользователей.
Обязательные теги
Существует несколько тегов, общих для каждого пользователя в XML файле формата ExpressionEngine, они расположены следующим образом.
Тег root
Документы XML требуют наличие тега root, окружающего все элементы. Для XML формата пользователя ExpressionEngine является обязательным тег root <members></members>.
Тег элемента
Каждый элемент XML ваших данных пользователя должен содержаться в блоке тегов <member></member>.
Теги данных пользователя
Существует три обязательных тега, для корректного формирования элемента пользователя.
- <username>
- <screen_name>
- <email>
Тег password
Тег <password> имеет специальный атрибут type. Он позволяет вам добавлять контекстную информацию для пароля.
type=
"text"
<password type="text">pa55w0id</password>
Пароли типа "text", это незашифрованные пароли в формате простого текста. Импортируя пользователей из файла XML, ExpressionEngine автоматически зашифрует пароли типа "text" перед добавлением их в базу данных. Это позволит вам сохранить существующие пароли, импортируя данные пользователей из сторонних приложений, которые не сохраняют зашифрованные пароли.
"md5"
<password type="md5">653132ffd94b986bf2bb806b3c67d190</password>
"md5" - пароли зашифрованы с помощью алгоритма RSA Data Security, Inc. MD5 Message-Digest Algorithm (md5) hash. [RFC 1321]
"sha1"
<password type="sha1">1b4395b877794a16a7f4db5747380dbaafc7ff18</password>
"sha1" - пароли, зашифрованные с помощью алгоритма US Secure Hash Algorithm 1 (sha1) hash. [RFC 3174]
ПРИМЕЧАНИЕ: Если вы импортируете зашифрованные пароли одного типа, а ваша система ExpressionEngine работает с другим типом шифрования, то пароли не будут работать, и пользователи должны будут использовать ссылку "Забыли пароль?", для получения нового пароля и авторизации.
Тег birthday
Тег <birthday> - единственный тег, который не совпадает с названием поля в базе данных. Вы можете использовать теги <bday_d>, <bday_m>, и <bday_y>, тега <birthday> и его потомков, они были созданы, чтобы учесть семантику файла пользователей XML - формата. Тег <birthday> не содержит никаких значений, и имеет три дочерних элемента.
<month>
Две цифры месяца дня рождения пользователя. Например: 02
<day>
Две цифры дня рождения пользователя. Например: 19
<year>
Четыре цифры года рождения пользователя. Например: 1977
Для приведенных выше примеров, элемент дня рождения пользователя в XML - файле выглядит следующим образом:
<birthday>
<month>02</month>
<day>19</day>
<year>1977</year>
</birthday>
Пример, приведенный выше, эквивалентен следующему:
<bday_m>02</bday_m> <bday_d>19</bday_d> <bday_y>1977</bday_y>
Доступные теги данных пользователя
- <accept_admin_email>
- <accept_messages>
- <accept_user_email>
- <aol_im>
- <authcode>
- <avatar_filename>
- <avatar_height>
- <avatar_width>
- <bday_d>
- <bday_m>
- <bday_y>
- <birthday>
- <day>
- <month>
- <year>
- <bio>
- <cp_theme>
- <daylight_savings>
- <display_avatars>
- <display_signatures>
- <email>
- <forum_theme>
- <group_id>
- <icq>
- <in_authorlist>
- <interests>
- <ip_address>
- <join_date>
- <language>
- <last_activity>
- <last_bulletin_date>
- <last_comment_date>
- <last_email_date>
- <last_entry_date>
- <last_forum_post_date>
- <last_view_bulletins>
- <last_visit>
- <localization_is_site_default>
- <location>
- <member_id>
- <msn_im>
- <notepad>
- <notepad_size>
- <notify_by_default>
- <notify_of_pm>
- <occupation>
- <password>
- <photo_filename>
- <photo_height>
- <photo_width>
- <pmember_id>
- <private_messages>
- <profile_theme>
- <quick_links>
- <quick_tabs>
- <screen_name>
- <sig_img_filename>
- <sig_img_height>
- <sig_img_width>
- <signature>
- <smart_notifications>
- <template_size>
- <time_format>
- <timezone>
- <tmpl_group_id>
- <total_comments>
- <total_entries>
- <total_forum_posts>
- <total_forum_topics>
- <tracker>
- <upload_id>
- <url>
- <username>
- <weblog_id>
- <yahoo_im>