masterflash-ru/kontakt
Composer 安装命令:
composer require masterflash-ru/kontakt
包简介
Страница с контактами для системы управления Simba мультиязычная
关键字:
README 文档
README
Выводит страницу контактов и форму обратной связи Использует сервис statpage в которой должна быть страница с системным именем KONTAKT и иметь статус "Для внутренних целей". Форма обратной связи просто отправляется на почту менеджеру. Адрес менеджера указывается в config с ключем admin_emails, в виде массива. Обратный адрес хранится в ключе email_robot общего конфига
Как дополнительные опции предоставляет работу всплывающих окон для обратного звонка и подписки на чего-либо
Установка composer require masterflash-ru/kontakt
Для отправки сообщений используется пакет masterflash-ru/emailer - если он установился после обновления, не забудьте загрузить в базу дамп.
Конфигурация полей хранится config/forma.ХХХХ.config.php, при необходимости вы можете добавить новые поля, указав новый файл с конфигом формы. Важно! имена captcha, submit, security не менять. Все поля просто отправляются на почту, подписи полей берутся из меток. ХХХХ - имя элемента: kontakt, call, subs
Модуль имеет вызовы для генерации карты сайта sitemap.xml, возвращает информацию для модуля masterflash-ru/sitemap для генерации индексного файла и для самой карты, пока только для ru_RU. Принцип поиска маршрутов производится по начальному слову kontakt в имени маршрута.
для мультиязычных сайтов все готово для работы, и как правило не требуется измнений (ПОКА НЕ ТЕСТИЛ!!!): 1 - добавить маршрут по аналогии с дефолтным, например,
'kontakt_en_US' => [ 'type' => Segment::class, 'options' => [ 'route' => '/en/kontakt', 'defaults' => [ 'controller' => Controller\IndexController::class, 'action' => 'index', 'locale' => 'en_US' ], ], ],
2 - добавить в конфиг приложения секцию транслятора, наподобие:
'translator' => [ 'locale' => 'en_US', 'translation_file_patterns' => [ [ 'type' => 'phparray', 'base_dir' => __DIR__ . '/../locale', 'pattern' => '%s.php', ], ], ],
3 - добавить языковой перевод в файл, например, en_US.php, наподобие:
return [ "Ваш email адрес"=>"Your email address", ];
Настройки модуля (ниже по умолчанию), определите новые опции в своем приложении. Все поля кроме 'captcha','security',"submit" отправляются на почту. Имя поля берется из опции label конфига формы
"kontakt"=>[ /*конфиг элементов ленты*/ "categories"=>[ 'kontakt_page' =>[ 'description'=>'Страница контактов + форма', 'tpl' => [ 'index' => 'kontakt/index/index', //шаблон вывода страницы 'ok' => 'kontakt/index/ok', //шаблон вывода страницы после отправки формы ], 'layout' => null, //макет вывода, по умолчанию текущий /*конфигурация формы*/ "forma"=>__DIR__."/forma.kontakt.config.php", ], 'subs' =>[ 'description'=>'Всплывающее окно для подписок', 'tpl' => [ 'index' => 'kontakt/subs/index', //шаблон вывода страницы 'ok' => 'kontakt/subs/ok', //шаблон вывода страницы после отправки формы ], /*конфигурация формы*/ "forma"=>__DIR__."/forma.subs.config.php", ], 'call' =>[ 'description'=>'Всплывающее окно для обратного звонка', 'tpl' => [ 'index' => 'kontakt/call/index', //шаблон вывода страницы 'ok' => 'kontakt/call/ok', //шаблон вывода страницы после отправки формы ], /*конфигурация формы*/ "forma"=>__DIR__."/forma.call.config.php", ], ], /*какие элементы разрешено использовать, укажите в конфиге своего приложения */ "enables"=>[ "kontakt_page"=>true, "subs" =>false, "call" =>false ], ],
Сценарий вывода форм использует bootstrap4, при необходимости используйте свои, указав в сценарии имена в формате Laminas Для работы со всплыващими окнами:
1 - подключите в макете файл jquery.form.min.js для обрабоки асинхронных запросов
2 - ипользуйте диалоги bootstrap4:
<button class="btn btn-primary subs mt-2 btn-sm" data-toggle="modal" data-target="#subsModal">Подписаться на рассылку</button> <div class="modal fade" id="subsModal" tabindex="-1" role="dialog" aria-labelledby="SModalLabel" aria-hidden="true"> <div class="modal-dialog modal-lg" role="dialog"> <div class="modal-content"> <div class="modal-header"> <p class="modal-title h5 text-primary" id="exampleModalCenterTitle">Подписаться на рассылку</p> <button type="button" class="close bg-danger" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> </div> </div> </div> </div> <script> /*диалог подписаться, в момент открытия загружается форма*/ $('#subsModal').on('show.bs.modal', function (event) { $(this).find('.modal-body').load("/subs"); }) </script>
3 - разумеется все библиотеки bootstrap4 должны быть подключены
masterflash-ru/kontakt 适用场景与选型建议
masterflash-ru/kontakt 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 134 次下载、GitHub Stars 达 1, 最近一次更新时间为 2017 年 10 月 03 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「masterflash」 「simba」 「laminas」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 masterflash-ru/kontakt 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 masterflash-ru/kontakt 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 masterflash-ru/kontakt 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
This package provide a Geo modules for yawik.
PSR-11 Aura.DI container configurator for Laminas and Mezzio applications. Drop-in replacement for the archived laminas/laminas-auradi-config with PHP 8.4 and 8.5 support.
MongoDB Adapter to be used with Laminas Paginator
Utils to load, parse and work with configuration on Mezzio projects
Просто страницы для системы управления Simba
Сервис-библиотека для обработки файлов в хранилище
统计信息
- 总下载量: 134
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 5
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2017-10-03