Phpxcore:php4:configuration
Материал из phpXCoreWiki.
Содержание |
[править] Конфигурирование XCore
При конфигурировании XCore и её модулей используются следующие файлы:
- XCore.conf.xml (/application/xcore/) - общие настройки ядра
- modules.run.xml (/application/modules/) - настройка взаимодействия модулей (включение активных модулей и программирования состояний)
- module.xml (/application/modules/__module__/) - настройка непосредственно самих модулей ядра
[править] XCore.conf.xml
Параметры:
- debug - вывод отладочной информации (см. error_reporting), поддерживается вывод в формате HTML и в null
- default - секция с настройками по умолчанию
- template - название темплейта
- database - секция для настройки соединения с БД
Пример:
<XCORE> <debug value="true" /> <seo value="true"/> <post_redirect value="true" /> <languages default="en" enabled="true" path="lang"> <lang name="en" /> </languages> <default history="Main" template="XC.index.tpl"> <database> <phptype>mysql</phptype> <username>p_phpxcore</username> <password>123</password> <!-- tcp, unix --> <protocol>tcp</protocol> <hostspec>elephant.nixsolutions.com</hostspec> <database>phpxcore</database> <prefix>xc_</prefix> </database> <!--Admin e-mail--> <email>dark@nixsolutions.com</email> <status> <module>xstaticpages</module> <action>home</action> </status> <status_admin> <module>xadmin</module> <action>main</action> </status_admin> <template> <main>XC.index.tpl</main> <admin>Admin/admin.tpl</admin> </template> </default> <roles messages='true' redirect='true'> <user> <superuser/> <megasuperuser/> </user> <admin> <moderator/> </admin> <guest/> </roles> <!-- Подключение плагинов --> <plugins> <plugin> <class>XPluginSkin</class> <enabled>true</enabled> <skins> <skin>default</skin> <skin>simple</skin> </skins> <default> <skin>default</skin> <color>789</color> </default> </plugin> <plugin> <class>XPluginXajax</class> <enabled>true</enabled> </plugin> <plugin> <class>XPluginCron</class> <enabled>false</enabled> </plugin> <plugin> <class>XPluginLang</class> <enabled>true</enabled> <langs> <lang>en</lang> <lang>ru</lang> </langs> <default>en</default> </plugin> <plugin> <class>XPluginCron</class> <enabled>true</enabled> </plugin> </plugins> <!-- Настройка класса Document --> <document> <!-- Types: HTML XHTML XHTML_11 XHTML_20 SubTypes (for HTML and XHTML): Strict Transitional Frameset --> <type>HTML</type> <subtype>Transitional</subtype> </document> </XCORE>
[править] modules.run.xml
Данный конфигурационный файл предназначен для определения *состояний ядра, настройки активных модулей, параметров соединения с БД. На данный момент у него следующая структура:
<XMODULES> <имя_модуля_1 dirname='имя_директории' enabled='активен_или_нет'> <database> <phptype>тип базы данных</phptype> <username>пользователь</username> <password>пароль</password> <!-- tcp, unix --> <protocol>tcp</protocol> <hostspec>хост</hostspec> <database>имя БД</database> <prefix>префикс для имен таблиц</prefix> </database> <!-- Описание состояний --> <status> <имя_состояния template = 'имя_темплейта' history = "имя_для_отображения_в_истории" / <default template = 'имя_темплейта' history = "имя_для_отображения_в_истории" / </status> <!-- Описание состояний для admin --> <status_admin> <default/> </status_admin> </имя_модуля> <имя_модуля_2 dirname='имя_директории' enabled='активен_или_нет' /> <имя_модуля_3 dirname='имя_директории' enabled='активен_или_нет' /> <!-- ... --> <имя_модуля_X dirname='имя_директории' enabled='активен_или_нет' /> </XMODULES>
Примечание: обязательным при составлении состояний укзаывать настройки default состояния.
[править] module.xml
При составлении конфигурационного файла для нового модуля необходимо использовать следующий шаблон:
<module version="module_version"> <info> <author> <name>Author_Full_Name</name> <nick>Author_Nick_Name</nick> <email>Author_E-mail</email> </author> <description><![CDATA[ Description<br/> Description<br/> Description<br/> ]]> </description> </info> <config> <classes> <main>Имя_Основного_Класса</main> <admin>Имя_Админ_Класса</admin> <gateway>Имя_Класса_Gateway</gateway> <xajax>Имя_Класса_Xajax</xajax> </classes> <languages enabled='false' path='lang'> <lang>en</lang> </languages> <main> <autoinit> <file>classes/File1.class.php</file> <file>classes/File2.class.php</file> <file>classes/File3.class.php</file> </autoinit> </main> </config> </module>
Подробное описания настройки модулей см. в документации по модулям.
