nitra/e-commerce-site-reviewbundle

此包已废弃,不再维护。未建议替代包。

审查包

维护者

详细信息

bitbucket.org/nitra/nep-site-review

安装: 347

依赖项: 0

建议者: 0

安全性: 0

类型:symfony-bundle

v1.0 2014-09-19 18:27 UTC

This package is auto-updated.

Last update: 2018-04-17 12:30:40 UTC


README

配置

为了让此包工作,您需要将以下内容添加到您的 app/config/config.yml 配置文件中:

# app/config/config.yml

 twig.extension.intl:
        class: Twig_Extensions_Extension_Intl
        tags:
            - { name: twig.extension }

导入路由

导入路由

# app/config/routing.yml

nitra_review:
    resource: "@NitraReviewBundle/Resources/config/routing.yml"
    prefix:   /

导入路由

# app/config/parameters.yml
parameters:
    # способ авторизации (какие поля нужны для ввода отзыва): 
    # nitraAuth - с помощью бандла NitraAuth
    # userName - для отправки сообщения требуется только имя пользователя
    # userNameAndEmail - для отправки сообщения требуется имя пользователя и email
    # отсутствие reviewAuth равноценно reviewAuth: userName, при этом варианте не используется документ BuyerBundle
    # reviewAnswer - будет ли возможность оставлять ответ на отзывы пользователям, принимает значение true, false соответственно. false по умолчанию при отсутствии параметра.

    reviewAuth: userNameAndEmail
    reviewAnswer: true

启用包

在内核中启用包

// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Nitra\ReviewBundle\NitraReviewBundle(),
    );
}

模板中添加示例(商品卡片 - 选项卡)

    # src/Nitra/ProductBundle/Resources/views/Product/productPageContent.html.twig

    # ...
    {% block tabs %}
        # ...
        {% set productReviews = render(controller("NitraReviewBundle:Review:review", {'utensils' : 'product', 'objectId': product.id, 'reviewObjName':product.name}))%}
        # ...
        {{ include('NitraProductBundle:Modules:tabs.html.twig', {'tabs': {
            # ...
            'reviews': { 'content': productReviews, 'name': ('product.review'|trans) }
            # ...
        }}) }}
    {% endblock tabs %}
    # ...

可以单独输出表单和单独的评论列表

    # src/Nitra/ProductBundle/Resources/views/Product/productPageContent.html.twig

    # ...
    {% Вывод списка %}
    {% block tabs %}
        # ...
        {% set productReviews = render(controller("NitraReviewBundle:Review:List"))%}
        # ...
        {{ include('NitraProductBundle:Modules:tabs.html.twig', {'tabs': {
            # ...
            'reviews': { 'content': productReviews, 'name': ('product.review'|trans) }
            # ...
        }}) }}
    {% endblock tabs %}

    {% Вывод формы %}
    {% render controller("NitraReviewBundle:Review:addReview", {'utensils' : 'product', 'objectId': product.id, 'reviewObjName':product.name}) %}

    {% Необходимый скрипт для работы отзывов %}
    {% render controller("NitraReviewBundle:Review:reviewScript") %}
    # Параметр "utensils" обозначает принадлежность отзыва к товару, либо информационной статье, либо это отзыв магазина и может принимать 3 значения: product, info, store.
    # В зависимости от установленного параметра utensils формируется ссылка на объект отзыва на форме редактирования отзыва.
    # utensils задаётся только в review и addReview action.
    #
    # Также необходимо учитывать фоктор кэширования страниц, где происходит render, в таком случае необходимо вместо {% render(controller( ... использовать
    # {{ render_esi (controller(...
    # Например так: {{ render_esi (controller("NitraReviewBundle:Review:review" , {'utensils' : 'product', 'objectId': product.id, 'reviewObjName': product.fullName })) }}
    # render_esi нельзя присваивать переменным и нежелательно(необходимо тестировать) использовать фильтра.
    #...