定制 manuxi/sulu-testimonials-bundle 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

manuxi/sulu-testimonials-bundle

最新稳定版本:1.5.2

Composer 安装命令:

composer require manuxi/sulu-testimonials-bundle

包简介

Say hello to Sulu testimonials!

README 文档

README

php workflow symfony workflow License: MIT GitHub Tag Supports Sulu 3.0 or later

English | Deutsch

A Sulu CMS bundle for managing customer testimonials, reviews, and quotes with configurable star ratings.

Admin View

✨ Features

  • Testimonial Management - Create, edit, and publish customer testimonials
  • Star Rating System - Configurable 5 or 10 point rating scale with star symbols
  • Contact Integration - Link testimonials to Sulu contacts
  • Smart Content Provider - Use testimonials in any Sulu page via Smart Content
  • Selection Content Types - Single and multiple testimonial selection
  • Workflow Support - Draft/Published workflow with versioning
  • Multi-language - Full translation support
  • SEO & Sitemap - Built-in SEO and sitemap integration
  • Search Integration - Admin and website search indexes
  • Trash Support - Restore deleted testimonials
  • Activity Logging - Track all changes

Breaking change

  • uuid - since 1.5.0 (not compatible to previous versions)

📋 Requirements

  • PHP 8.2+
  • Sulu CMS 3.0+
  • Symfony 6.4+ / 7.0+

👩🏻‍🏭 Installation

Step 1: Install via Composer

composer require manuxi/sulu-testimonials-bundle

Step 2: Register the Bundle

If not using Symfony Flex, add to config/bundles.php:

return [
    // ...
    Manuxi\SuluTestimonialsBundle\SuluTestimonialsBundle::class => ['all' => true],
];

Step 3: Configure Routes

Add to config/routes/sulu_admin.yaml:

SuluTestimonialsBundle:
    resource: '@SuluTestimonialsBundle/Resources/config/routes_admin.yaml'

Step 4: Update Database

# Preview changes
php bin/console doctrine:schema:update --dump-sql

# Apply changes
php bin/console doctrine:schema:update --force

Step 5: Build Admin Assets

cd assets/admin
npm install
npm run build

Step 6: Grant Permissions

  1. Go to Settings → User Roles in Sulu Admin
  2. Select the appropriate role
  3. Enable permissions for Testimonials
  4. Save and reload

🧶 Configuration

Create config/packages/sulu_testimonials.yaml:

sulu_testimonials:
    rating:
        max_value: 5            # 5 or 10 point scale
        default_value: 3        # Default rating for new testimonials
        use_star_symbols: true  # Show stars in admin dropdown
        use_star_widget: false  # Use interactive star widget (future)

See Configuration Documentation for all options.

🎣 Usage

Smart Content

Use testimonials in any page template:

<property name="testimonials" type="smart_content">
    <meta>
        <title lang="en">Testimonials</title>
        <title lang="de">Testimonials</title>
    </meta>
    <params>
        <param name="provider" value="testimonials"/>
        <param name="max_per_page" value="5"/>
        <param name="page_parameter" value="page"/>
    </params>
</property>

Selection Types

Single testimonial:

<property name="featured_testimonial" type="single_testimonial_selection">
    <meta>
        <title lang="en">Featured Testimonial</title>
    </meta>
</property>

Multiple testimonials:

<property name="testimonials" type="testimonial_selection">
    <meta>
        <title lang="en">Testimonials</title>
    </meta>
</property>

Twig Template

{% for testimonial in testimonials %}
    <div class="testimonial">
        <blockquote>{{ testimonial.text|raw }}</blockquote>
        
        {% if testimonial.contact %}
            <cite>{{ testimonial.contact.fullName }}</cite>
        {% endif %}
        
        {# Rating display - uses global variable #}
        {% if testimonial.rating >= 0 %}
            {% set maxRating = testimonials_rating_max_value %}
            <div class="rating">
                {{ testimonial.rating }}/{{ maxRating }}
            </div>
        {% endif %}
    </div>
{% endfor %}

📖 Documentation

🔌 Optional Integrations

Star Rating in Admin Lists

If you have SuluTweaksBundle installed, you can enable star rating display in admin lists. See Admin List Documentation.

👩‍🍳 Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

📄 License

This bundle is released under the MIT License.

统计信息

  • 总下载量: 13
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-02-25

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固