Фреймворк Webasyst позволяет выполнять некоторые служебные команды посредством интерфейса командной строки сервера (CLI). Служебные команды предназначены для разработчиков собственных программных продуктов: приложений и плагинов.
Для выполнения служебных команд необходим соответствующий доступ к веб-серверу, на котором установлен фреймворк, например, консоль (терминал) командной строки или SSH. При выполнении команды выполняется вызов интерпретатора PHP с указанием имени файла wa.php, расположенного в корневой директории фреймворка.
-
createApp
Создание приложения.
-
createPlugin
Создание плагина для приложения.
-
createSystemplugin
Создание системного плагина.
-
createTheme
Создание темы дизайна.
-
createWidget
Создание виджета.
-
generateDb
Формирование файла описания таблиц базы данных.
-
compress
Проверка кода и сжатие исходных файлов в архив для публикации в магазине Webasyst.
-
locale
Поиск новых строк локализации.
php wa.php createApp app_id parameters
Создает базовый набор директорий и файлов, необходимых для разработки нового приложения в директории wa-apps/[app_id]/.
Параметры
-
app_id
Идентификатор приложения (строка в нижнем регистре, например,
myapp). -
parameters
Параметры:
-name: Название приложения; если название состоит из нескольких слов, то его нужно заключить в кавычки, например, 'My app'.-version: Версия приложения, например, 1.0.0.-vendor: Числовой идентификатор разработчика.-frontend: Имеет ли приложение фронтенд (публично доступные страницы).-themes: Поддерживает ли приложение подключение тем дизайна (доступно только при включенном параметре-frontend:).-plugins: Поддерживает ли приложение подключение плагинов.-cli: Имеются ли в приложении обработчики вызовов через командную строку — для выполнения заданий планировщика (cron).-api: Предоставляет ли приложение методы API.
Пример
php wa.php createApp myapp -name 'My app' -version 1.0.0 -vendor 123456 -frontend -themes -plugins -cli -api
php wa.php createPlugin app_id plugin_id parameters
Создает базовый набор директорий и файлов, необходимых для разработки нового плагина к существующему приложению в директории wa-apps/[app_id]/plugins/[plugin_id].
Параметры
-
app_id
Идентификатор приложения (строка в нижнем регистре, например,
myapp). -
plugin_id
Идентификатор плагина (строка в нижнем регистре, например,
myplugin). -
parameters
Параметры:
-name: Название плагина; если название состоит из нескольких слов, то его нужно заключить в кавычки, например, 'My plugin'.-version: Версия плагина, например, 1.0.0.-vendor: Числовой идентификатор разработчика.-frontend: Имеет ли плагин функции для фронтенда (публично доступных страниц).-settings: Реализован ли в плагине собственный интерфейс настроек (в качестве замены стандартному).
Пример
php wa.php createPlugin someapp myplugin -name 'My plugin' -version 1.0.0 -vendor 123456 -frontend -settings
php wa.php createSystemplugin type plugin_id parameters
Создает базовый набор директорий и файлов, необходимых для разработки нового системного плагина оплаты, доставки или отправки SMS в директории wa-plugins/[type]/[plugin_id].
Параметры
-
type
Тип плагина:
payment,shippingилиsms. -
plugin_id
Идентификатор плагина (строка в нижнем регистре, например,
myplugin). -
parameters
Параметры:
-name: Название плагина; если название состоит из нескольких слов, то его нужно заключить в кавычки, например, 'My shipping'.-version: Версия плагина, например, 1.0.0.-vendor: Числовой идентификатор разработчика.-settings: Предоставляет ли плагин интерфейс для сохранения пользовательских настроек.-prototype: Идентификатор установленного системного плагина того же типа, исходный код которого нужно использовать в качестве образца для создания нового плагина.
Пример
php wa.php createSystemplugin shipping myplugin -name 'My shipping' -version 1.0.0 -vendor 123456 -prototype courier
php wa.php createTheme app_id[,app_id_2[,...]] theme_id parameters
Создает базовый набор директорий и файлов, необходимых для разработки новой темы дизайна.
Параметры
-
app_id[,app_id_2[,...]]
Идентификатор одного приложения или идентификаторы нескольких приложений через запятую. Вместо перечисления всех приложений с поддержкой фронтенда, доступных в бекенде разработчика, можно указать символ
*(звёздочка). -
theme_id
Идентификатор темы дизайна (строка в нижнем регистре, например,
mytheme). -
parameters
Параметры:
-name: Название темы дизайна; если название состоит из нескольких слов, то его нужно заключить в кавычки, например, 'My widget'.-parent: Идентификатор родительской темы дизайна.-version: Версия темы дизайна, например, 1.0.0.-vendor: Числовой идентификатор разработчика.-prototype: Идентификатор установленной темы, которая будет использована в качестве прототипа. По умолчанию в качестве прототипа используется тема дизайна с идентификаторомdefault.
Пример
php wa.php createTheme site,shop,blog mytheme -name 'My theme' -version 1.0.0 -vendor 123456 -prototype dummy
php wa.php createWidget app_id widget_id parameters
Создает базовый набор директорий и файлов, необходимых для разработки нового виджета.
Параметры
-
app_id
Идентификатор приложения. Если необходимо создать общесистемный плагин в директории
wa-widgets/, следует указать идентификатор приложенияwebasyst. -
widget_id
Идентификатор виджета (строка в нижнем регистре, например,
mywidget). -
parameters
Параметры:
-name: Название виджета; если название состоит из нескольких слов, то его нужно заключить в кавычки, например, 'My widget'.-version: Версия виджета, например, 1.0.0.-vendor: Числовой идентификатор разработчика.-settings: Предоставляет ли виджет интерфейс для сохранения пользовательских настроек.
Пример
php wa.php createWidget shop mywidget -name 'My widget' -version 1.0.0 -vendor 123456 -settings
php wa.php generateDb app_id/plugin_id tables -update
Формирует либо обновляет конфигурационный файл описания базы данных приложения или плагина lib/config/db.php.
Параметры
-
app_id
Идентификатор приложения (строка в нижнем регистре, например,
myapp). -
plugin_id
Необязательный идентификатор плагина — если необходимо сформировать файл
db.phpдля плагина, а не приложения. -
tables
Список названий таблиц, разделенных пробелами, описания которых необходимо добавить в файл.
-
-update
Необязательный параметр, позволяющий обновить содержимое уже существующего файла.
Примеры для приложения
#создание файла db.php php wa.php generateDb myapp myapp_items myapp_types #обновление файла db.php php wa.php generateDb myapp myapp_items myapp_types -update
Примеры для плагина
#создание файла db.php
php wa.php generateDb someapp/myplugin myplugin_items myplugin_types
#обновление файла db.php
php wa.php generateDb someapp/myplugin myplugin_items myplugin_types -update
php wa.php compress slug params
Выполняет базовую проверку программного кода и сжатие исходных файлов в архив для публикации в магазине Webasyst.
Параметры
-
slug
Идентификатор приложения, плагина или темы дизайна. Примеры идентификаторов:
- myapp
- someapp/plugins/myplugin
- someapp/themes/mytheme
- wa-plugins/payment/myplugin
- wa-plugins/shipping/myplugin
- wa-plugins/sms/myplugin
-
params
Параметры:
-styleПараметры проверки программного кода:true: Проверка кода выполняется.false: Проверка кода не выполняется.no-vendors: (значение по умолчанию) Проверка кода выполняется за исключением файлов в директорияхlib/vendors/иjs/vendors/(продукты третьих сторон, используемые в вашем приложении или плагине).
-skipПропуск отдельных операций:compress: Не выполнять сжатие файлов в архив.test: Не выполнять базовую проверку программного кода, наличие заявленных параметров маршрутизации и файлов конфигурации таблиц базы данных.all: Не выполнять ни одно из этих действий.none: (значение по умолчанию) Ничего не пропускать — выполнять все операции.
Примеры
# проверить код без подключенных продуктов третьих сторон и сжать файлы в архив php wa.php compress someapp/plugins/myplugin # проверить код вместе c подключенными продуктами третьих сторон и сжать файлы в архив php wa.php compress someapp/plugins/myplugin -style true # проверить код без подключенных продуктов третьих сторон, не сжимая файлы в архив php wa.php compress someapp/plugins/myplugin -skip compress # сжать файлы в архив без какой-либо проверки php wa.php compress someapp/plugins/myplugin -skip test
php wa.php locale slug --debug
Поиск новых строк локализации: в файлы с расширением .po добавляются ключи строк, использующиеся в исходном коде продукта и отсутствующие в файлах локализации. Поиск находит только те ключи, которые передаются в качестве строк непосредственно в функции локализации, а не в виде переменных.
Параметры
-
slug
Идентификатор приложения, плагина или темы дизайна. Примеры идентификаторов:
- myapp
- someapp/plugins/myplugin
- someapp/themes/mytheme
- wa-plugins/payment/myplugin
- wa-plugins/shipping/myplugin
- wa-plugins/sms/myplugin
-
--debug
Строковый параметр-флаг, при наличии которого в PO-файлы добавляется также отладочная информация:
- пути к файлам и номера строк в них, где используется каждый из ключей локализации;
- комментарии «Not found» — в случае, если ключи локализации, присутствующие в PO-файле, не используются в исходном коде продукта (случаи, когда ключи локализации передаются в функции локализации в виде переменных, не учитываются).
Примеры
# только добавить в PO-файлы новые ключи локализации php wa.php locale someapp php wa.php locale someapp/plugins/myplugin # добавить в PO-файлы новые ключи локализации # и комментарии с путями к файлам и информацией о ненайденных ключах php wa.php locale someapp --debug php wa.php locale someapp/plugins/myplugin --debug









