Руководство Melbis Shop: оглавление
Сохраняет существующий PHP-файл: код и, если передан, манифест модуля.
«Прямой доступ → Разработка → Изменение данных»
(AGENT_ENGINE_DEV_WRITE).
| Параметр | Тип | Что это |
|---|---|---|
path |
строка | путь файла |
[content] |
строка | новое тело файла |
[content_source] |
строка | файл на этом компьютере — абсолютный путь или путь от папки магазина
— вместо content: тело уходит байт в байт, не проходя через
переписку |
[manifest] |
объект | манифест модуля с ключами, которые отдаёт
engine_php_load |
[build] |
да/нет | поднять номер сборки магазина |
Нужен content или content_source:
сохранение без тела отказывает, иначе оно очистило бы файл.
manifest переписывает
.json модуля целиком. Ключ, которого нет в объекте,
получает пустое значение или ноль, поэтому манифест передают полностью —
проще всего взять его из engine_php_load и поменять нужное.
Список таблиц table_info движок после сохранения собирает
заново по запросам модуля; остаются только снятые таблицы
(log=0). В списке includes наоборот: снятые
записи (=0) не сохраняются. Без manifest
меняется только код, .json не трогается.
build поднимает номер сборки, который
страница подвешивает к своим css и js, — тогда браузеры посетителей
возьмут свежую статику. Самому модулю это не нужно: его вывод браузер не
хранит.
Что ещё делает сохранение — перезаписывает файл целиком, сбрасывает кеш, пишет версию — описано в «PHP-файлы».
{"path": "./../units/melbis_cataloge.php", "manifest": false, "build": false, "warning": ""}| Поле | Что это |
|---|---|
path |
путь сохранённого файла |
manifest |
переписан ли .json |
build |
поднят ли номер сборки |
warning |
замечания проверки модуля одной строкой после Warning!:
Undeclared — вызов функции библиотеки, которой нет в
includes; Unused — библиотека подключена, но
не используется; One alias only — библиотека публикует
больше одного короткого имени; Alias differs —
use зовёт библиотеку не тем именем, что она публикует;
Namespace missing — библиотека публикует короткое имя, а
пространства имён у файла нет. Пусто, если замечаний нет; корневой
скрипт не проверяется |
| Ответ | Когда |
|---|---|
… is not a php file of the project… |
путь — не php-файл проекта: модули лежат в units/,
корневые скрипты — в корне сайта |
No such file: … SAVE changes a file, it does not create one… |
файла нет на сервере — его создают engine_php_add |
Say content, or content_source with a path on this machine… |
не указаны ни content, ни
content_source |
path is required |
не указан path |
Общие отказы — «Ответы и отказы».