andreyryabin/sprint.options 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

andreyryabin/sprint.options

Composer 安装命令:

composer require andreyryabin/sprint.options

包简介

Content options for 1C-Bitrix

README 文档

README

Latest Stable Version Total Downloads

README

Скачайте код модуля через composer

composer require andreyryabin/sprint.options

{
  "extra": {
    "installer-paths": {
      "bitrix/modules/{$name}/": ["type:bitrix-module"]
    }
  },
  "require": {
    "andreyryabin/sprint.options": "dev-master"
  },
}

Установите модуль через админку (маркетплейс - установленные решения)

Появится файл /bitrix/php_interface/sprint.options.php или /local/php_interface/sprint.options.php

Редактируйте его содержимое на свое усмотрение, пример

Предпочтительный формат

<?php

use Sprint\Options\Builder\Builder;
use Sprint\Options\Custom\FileOption;
use Sprint\Options\Custom\SelectOption;
use Sprint\Options\Custom\StringOption;
use Sprint\Options\Custom\TextareaOption;

return (new Builder)
    ->setTitle('Настройки контента')
    ->setSort(60)
    ->addPage('Страница 1')
    ->addTab('О компании')
    ->addCustomOption(
        (new StringOption('EMAIL'))
            ->setTitle('Email компании')
            ->setDefault('about@example.com')
            ->setWidth('400')
    )
    ->addCustomOption(
        (new TextareaOption('OFFICE'))
            ->setTitle('Адрес офиса')
            ->setDefault('Адрес офиса')
            ->setWidth('400')
            ->setHeight('100')
    )
    ->addTab('Общие')
    ->addCustomOption(
        (new SelectOption('SELECT1'))
            ->setTitle('Значение из списка')
            ->setDefault('var2')
            ->setWidth(100)
            ->setOptions([
                'var1' => 'Вариант 1',
                'var2' => 'Вариант 2',
                'var3' => 'Вариант 3',
                'var4' => 'Вариант 4',
            ])
    )
    ->addPage('Страница 2')
    ->addTab('Таб 1')
    ->addCustomOption(
        (new FileOption('PICTURE'))
            ->setTitle('Фото офиса')
            ->setAllowImages(1)
    )
    ->addCustomOption(
        (new FileOption('FILES'))
            ->setTitle('Документы')
            ->setAllowFiles(0)
    );

Устаревший формат 1


use Sprint\Options\Builder\Builder;

return (new Builder)
    ->setTitle('Настройки контента')
    ->setSort(60)
    ->addPage('Страница 1')
    ->addTab('О компании')
    ->addOption('EMAIL', [
        'TITLE'   => 'Email компании',
        'DEFAULT' => 'about@example.com',
        'WIDTH'   => '400',
    ])
    ->addOption('OFFICE', [
        'TITLE'   => 'Адрес офиса',
        'DEFAULT' => 'Адрес офиса',
        'WIDTH'   => '600',
        'HEIGHT'  => '100',
    ])
    ->addTab('Общие')
    ->addOption('SELECT1', [
        'TITLE'   => 'Значение из списка',
        'DEFAULT' => 'var2',
        'OPTIONS' => [
            'var1' => 'Вариант 1',
            'var2' => 'Вариант 2',
            'var3' => 'Вариант 3',
            'var4' => 'Вариант 4',
        ],
    ])
    ->addPage('Страница 2')
    ->addTab('Таб 1')
    ->addOption('EMAIL_OFFICE_1', [
        'TITLE'   => 'Email офиса 1',
        'DEFAULT' => 'about1@example.com',
        'WIDTH'   => '400',
    ])
    ->addTab('Таб 2')
    ->addOption('EMAIL_OFFICE_2', [
        'TITLE'   => 'Email офиса 2',
        'DEFAULT' => 'about2@example.com',
        'WIDTH'   => '400',
    ]);

Устаревший формат 2

return array(
    'EMAIL' => array(
        'TITLE' => 'Email',
        'DEFAULT' => 'about@example.com',
        'WIDTH' => '400',
        'TAB' => 'О компании',
    ),

    'OFFICE' => array(
        'TITLE' => 'Адрес офиса',
        'DEFAULT' => 'Адрес офиса',
        'WIDTH' => '600',
        'HEIGHT' => '100',
        'TAB' => 'О компании',
    ),

    'SELECT1' => array(
        'TITLE' => 'Значение из списка',
        'DEFAULT' => 'var2',
        'OPTIONS' => array(
            'var1' => 'Вариант 1',
            'var2' => 'Вариант 2',
            'var3' => 'Вариант 3',
            'var4' => 'Вариант 4',
        ),
    ),
);


Подключите модуль в init.php: CModule::IncludeModule("sprint.options");

Используйте метод sprint_options_get в шаблонах и компонентах проекта чтобы вывести нужные значения

<?=sprint_options_get('EMAIL')?>

Значения параметров можно менять через админку, появится страница (Контент - Настройки контента) /bitrix/admin/sprint_options.php

Измененные параметры можно сбросить кнопкой сброса до значений в файле sprint.options.php (ключ DEFAULT)

sprint.options.png

andreyryabin/sprint.options 适用场景与选型建议

andreyryabin/sprint.options 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 5.74k 次下载、GitHub Stars 达 18, 最近一次更新时间为 2016 年 11 月 03 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「options」 「bitrix」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 andreyryabin/sprint.options 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 andreyryabin/sprint.options 我们能提供哪些服务?
定制开发 / 二次开发

基于 andreyryabin/sprint.options 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 5.74k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 18
  • 点击次数: 19
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 18
  • Watchers: 6
  • Forks: 7
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-11-03