lorenzschaef/help-pages-bundle

此Bundle提供了一种简单的方法,将最终用户文档包含到您的Symfony应用程序中。

安装: 14

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

类型:symfony-bundle

v1.0 2015-11-17 19:43 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:18:37 UTC


README

这是一个提供简单方法将最终用户文档包含到您的应用程序中的Symfony Bundle。它从服务器上存储的markdown文件中获取内容,并在模板中渲染它们,同时自动生成菜单。

安装

步骤1:下载Bundle

打开命令行,进入您的项目目录,然后执行以下命令以下载此Bundle的最新稳定版本

$ composer require lorenzschaef/help-pages-bundle "~1"

此命令要求您全局安装Composer,如Composer文档中的安装章节所述。

步骤2:启用Bundle

然后,通过将其添加到项目中的app/AppKernel.php文件中注册的Bundle列表中,来启用此Bundle。

此Bundle依赖于KnpMarkdownBundle,因此如果您尚未注册,则必须注册它。

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Knp\Bundle\MarkdownBundle\KnpMarkdownBundle(),
            new Lorenzschaef\HelpPagesBundle\LorenzschaefHelpPagesBundle(),
        );

        // ...
    }

    // ...
}

步骤3:配置路由

将以下行添加到您的app/config/routing.yml中,并根据需要更改前缀。

help_pages:
    resource: "@LorenzschaefHelpPagesBundle/Controller/"
    type: annotation
    prefix: /help

步骤4:将Bundle添加到Assetic配置

在您的app/config/config.yml中添加Bundle到Assetic配置。

assetic:
    bundles:        [AppBundle, LorenzschaefHelpPagesBundle, ...]

步骤4:更改基本目录(可选)

默认情况下,此Bundle在app/Resources/HelpPages中查找您的帮助页面。您可以在配置中更改此设置。

lorenzschaef_help_pages:
    basedir: your/directory

该目录相对于AppKernel.php指定,通常位于app文件夹中。

用法

添加您的文档

将帮助页面放在配置的文件夹中(默认为app/Resources/HelpPages)。文件必须以.md结尾,可以组织在子文件夹中。为了定义排序顺序,您可以在文件名前添加一个数字后跟一个下划线。

|- 01_gettingstarted.md
|- 02_basics
    |- index.md
    |- 01_accountcreation.md
    |- 02_profile.md
  ...

这些页面可以通过以下URL访问

http:://www.example.com/help/gettingstarted
http:://www.example.com/help/basics                     <- This displays the index.md
http:://www.example.com/help/basics/accountcreation
http:://www.example.com/help/basics/profile

菜单生成器查找每个文档的第一级标题以显示为链接文本。目前仅支持带有hash(#)的语法。如果无法在文档中找到任何一级标题,它将使用字符串“未命名”。

更改外观

原始模板位于Bundle文件夹下的Resources/views。

  • layout.html.twig:定义了通用布局。
  • toc.html.twig:定义了一个twig宏,用于在layout.html.twig中使用来渲染目录。

要覆盖这些之一,只需在app/Resources/LorenzschaefHelpPagesBundle/views中放置一个同名模板即可。