genj/faq-bundle

该包已被废弃且不再维护。未建议替代包。

Symfony FAQ 包

安装量: 5,582

依赖项: 1

建议者: 0

安全性: 0

星标: 5

关注者: 6

分支: 5

开放问题: 0

类型:symfony-bundle

v2.0.0 2017-06-10 19:26 UTC

This package is not auto-updated.

Last update: 2024-02-17 11:38:57 UTC


README

GenjFaqBundle 允许你在网站上展示 FAQ,问题按类别分组。功能

  • 问题按类别分组
  • 可以停用类别
  • 问题可以草稿并安排发布
  • 可以一次性显示所有信息,或折叠问题/类别以适应大型 FAQ。这基本上取决于你在模板中的处理方式
  • 折叠模式生成对 SEO 友好的 URL
  • 包含非常简单的 mysql 搜索 - 如果需要更高级的搜索,请使用 elasticsearch

要求

查看 composer.json

安装

将以下内容添加到你的 composer.json 中

    ...
    "require": {
        ...
        "gedmo/doctrine-extensions": "~2.3,<3.0",
        "genj/faq-bundle": "dev-master"
        ...

然后运行 composer update。完成后,在 AppKernel.php 中启用该包

# app/AppKernel.php
class AppKernel extends Kernel
{
    public function registerBundles() {
        $bundles = array(
            ...
            new Genj\FaqBundle\GenjFaqBundle()
            ...

将路由规则添加到你的 routing.yml

# app/config/routing.yml
genj_faq:
    resource: "@GenjFaqBundle/Resources/config/routing.yml"

最后,更新你的数据库模式

php bin/console doctrine:schema:update --dump-sql

使用 --force 选项来执行实际的数据库更新。

完成。现在你应该能够通过 http://yourproject.com/faq URL 访问该包,前提是在你的数据库中至少添加了一个类别。

可选:加载 fixtures

如果你使用 doctrine-fixtures 包,你可以这样加载 fixtures

php bin/console doctrine:fixtures:load --fixtures=vendor/genj/faq-bundle/src/Genj/FaqBundle/DataFixtures/

配置

你可以选择将以下配置添加到你的 config.yml

genj_faq:
    select_first_category_by_default: false
    select_first_question_by_default: false

这两个配置都会默认打开第一个类别和/或问题,如果用户尚未选择类别和/或问题。默认值都是 'false',所以如果你想这种行为,请将其设置为 'true'。

请注意,还需要为 gedmo/doctrine-extensions 配置 Sluggable 和 Timestampable 行为(参见 https://github.com/Atlantic18/DoctrineExtensions)。

高级

如果你想获取默认类别列表以及所有问题和答案之外的内容,你不应该导入包路由,只需复制你实际使用的部分。

例如,如果你想为每个问题创建单独的页面,请使用 genj_faq_question_show 路由。

有关更多示例,请参阅 https://github.com/genj/faq-demo

FAQ

  • 如何将其添加到 SonataAdmin?

你可以使用 GenjFaqAdminBundle:https://github.com/genj/GenjFaqAdminBundle,或者只需创建自己的管理类。