domstor-project/template-standard

“Domstor 模板标准”发行版

安装: 82

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 1

公开问题: 0

语言:CSS

类型:项目

1.8.0 2018-02-02 09:17 UTC

This package is not auto-updated.

Last update: 2024-09-29 03:59:19 UTC


README

要求

PHP>=7.1

安装

  1. composer create-project domstor-project/template-standard
  2. 必须指定参数 mailer_user
  3. mailer_request_recipients 参数输入格式为 ['email@email1.ru', 'email@email2.ru']
  4. 指定参数 default_timezone。例如: Asia/KrasnoyarskAsia/Novosibirsk
  5. 编辑文件 app/AppKernel.php。在行 date_default_timezone_set('Asia/Novosibirsk'); 将时区替换为上一条中输入的时区
  6. 设置 var/logs 和 var/cache 的权限。详细信息请参考 Symfony 文档
  7. 执行 php bin/console d:d:c 以创建数据库
  8. 执行 php bin/console d:s:u --force 以更新数据库模式
  9. 执行 php bin/console cache:clear 以清除缓存
  10. 执行 php bin/console fos:js-routing:dump 以将 Symfony 的路由输出到 JS
  11. 执行 php bin/console assetic:dump 以输出资产
  12. 创建文件夹 web/uploads 并设置权限 sudo chown -R www-data:www-data /path/to/project-folder/web/uploads sudo chmod -R 755 /path/to/project-folder/web/uploads
  13. 创建用于访问系统管理员的用户 php bin/console fos:user:createphp bin/console fos:user:promote admin_user_name ROLE_SUPER_ADMIN

配置

需要配置 DomstorTemplateBundle。示例配置

domstor_template:
    domstorlib:
        builder:
            org_id: 13 #Идентификатор вашей организации в системе Домстор
            location_id: 2004 #Идентификатор города в системе Домстор. 2004 - Кемерово, 2006 - Новокузнецк, 2236 - Новосибирск
            cache:
              type: 'file' #Тип кэширования. Поддерживаются: file, apc, array, xcache, memcache
              time: 86400 #Время жизни кэша
              uniq_key: '13' #Уникальный ключ хэша
              options:
                directory: '%kernel.cache_dir%' #Директория, где хранится кэш объектов
            filter:
              template_dir: '%kernel.root_dir%/../src/AppBundle/Resources/views/Filters'
        links: #Список населенных пунктов для поиска недвижимости
            2004: 'Недвижимость в Кемерово'
            43: 'Недвижимость в Кемеровской области'
    mailer:
        request: 
            service: 'default' #mailer-сервис, через который будут отправляться сообщения о поступлении новых заявок
            to: '%mailer_request_recipients%' #Получатели рассылки о новых заявках
            from: '%mailer_request_from%' #От кого будут приходить заявки
            subject: '%mailer_request_subject%' #Тема письма для заявки
            email_template: 'DomstorTemplateBundle:Email:email_request.html.twig' #Шаблон письма
    
    title: 
        objects: #Заголовки пунктов для меню недвижимости
            flat: 'Квартиры'
            house: 'Дома и коттеджи'
            land: 'Земля и дачи'
            garage: 'Гаражи и парковки'
            office: 'Офисная'
            trade: 'Торговая'
            product: 'Производственная'
            storehouse: 'Складская'
            landcom: 'Земля'
            other: 'Прочее'
            complex: 'Имущественные'
        objectsHtml: #Заголовки пунктов для меню недвижимости с возможностью использовать html теги
            flat: 'Квартиры'
            house: 'Дома<br>Коттеджи'
            land: 'Дачи<br>Земля'
            garage: 'Гаражи<br>Парковки'
            office: 'Офисная'
            trade: 'Торговая'
            product: 'Производственная'
            storehouse: 'Складская'
            landcom: 'Земля'
            other: 'Прочее'
            complex: 'Имущественные'
        actions: #Заголовки разделов
            sale: 'Продают'
            rent: 'Сдают'
            purchase: 'Купят'
            rentuse: 'Снимут'
            exchange: 'Обмен'
            new: 'Новостройки'

主页块

系统中所有可用的块都在 AppBundle:Home:index.html.twig 中表示

{% block content %}
    {{ sonata_block_render({'type':'domstor.template.block.home.slider.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.special_offer.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.urgent_sale.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.review.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.employee.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.partner.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.vacancy.service'}) }}
    {{ sonata_block_render({'type':'domstor.template.block.home.post.service'}) }}
{% endblock %}

要移除主页上的块,只需删除其调用行。在这种情况下,将不会进行数据库查询。然而,在系统管理中,仍将保留向该块添加记录的可能性。默认情况下,块输出 100 条记录。为了设置块显示的记录数量,需要这样调用块

{{ sonata_block_render({'type':'domstor.template.block.home.vacancy.service'},  {'count':1}) }}

在这种情况下,块中将只输出一条记录。

存在输出房地产搜索表单块的可能性

{{ sonata_block_render(
        { 'type':'domstor.template.block.domstor_filter.service' },
        { 'object':'flat', 'action':'sale', 'form_action_route':'app_objects_list', 'filter_template_dir': '@AppBundle/Resources/views/HomeFilters' }
    ) }}

object - 房地产类型,action - 分类,form_action_route - 搜索房地产页面路由名称。filter_template_dir - 可选参数,允许指定包含搜索表单模板的单独文件夹,如果没有在块中传递此参数,则从 domstor_template.domstorlib.builder.filter_template_dir 中获取值。支持使用 @ 指定路径。

无控制器静态页面

存在添加无控制器静态页面的可能性。只需创建 twig 模板并在配置中指定必要设置即可。以“关于我们”页面为例:在 AppBundle/Resources/config/static_routing.yml 中添加记录

app_static_about: #Название роута для Symfony Routing
    path: /about #Путь к странице в адресной строке
    defaults:
        _controller: FrameworkBundle:Template:template #Обязательная строка для страницы без контроллера
        template:    AppBundle:Static:about.html.twig #Шаблон страницы

管理系统中显示的分区

存在隐藏系统管理员中分区的能力。所有可用的分区都在 app/config/sonata/admin.yml 文件中。要隐藏分区,只需注释掉该行。

sonata_admin:   
    security:
        handler: sonata.admin.security.handler.role
    title:      Кано
    title_logo: /../bundles/app/images/template/logo.png
    templates:
        # default global templates
        layout:    SonataAdminBundle::layout.html.twig

    dashboard:
        blocks:
            # display a dashboard block
            - { position: left, type: sonata.admin.block.admin_list }
        groups:
        domstor_template:
                keep_open:            true
                label_catalogue:      messages
                items:
                    - domstor.template.admin.slider #Слайдер
                    - domstor.template.admin.special_offer #Специальные предложения
                    - domstor.template.admin.urgent_sale #Срочная продажа
                    - domstor.template.admin.review #Отзывы
                    - domstor.template.admin.employee #Сотрудники
                    - domstor.template.admin.partner #Партнеры
                    - domstor.template.admin.vacancy #Вакансии
                    - domstor.template.admin.post #Новости