dacorp/extra-bundle

Dacorp Extra Bundle

安装: 286

依赖: 1

建议者: 0

安全: 0

星标: 3

关注者: 4

分支: 2

开放问题: 0

类型:symfony-bundle

dev-master 2015-07-14 14:20 UTC

This package is not auto-updated.

Last update: 2024-09-14 13:45:38 UTC


README

服务、辅助工具和标准视图的集合,用于在任何类型的网站上使用标准服务。

这是一个 正在进行中的项目,主要用于其他项目。您可以浏览仓库,但我不会推荐您使用它,除非您知道您要什么 ;)

此分支(master)支持 PUGXMultuUserBundle master、FOSUserBundle master 和 Symfony master。

分支(1.0)支持 PUGXMultuUserBundle 2.0、FOSUserBundle 2.0 和 Symfony >=2.1、<2.4。

包含的一些功能:

  • 图像上传服务:将 Punkave Image Uploader 作为与通用媒体模型紧密集成的服务(计划更新到 https://github.com/1up-lab/OneupUploaderBundle
  • 默认包含简单的 README 功能,按需使用(通常仅适用于开发环境): 提供一个包含位于项目根目录的 README.md Markdown 文件 html 渲染版本的页面
  • 管理针对 Twitter Cards 和 Open Graph 的元数据
  • 提供切换语言功能(路由、knpmenu 操作和处理器)

##使用 ImageUploader 服务

包含默认上传器 {% include "DacorpExtraBundle:Common:file-upload-control.html.twig" %}

用于管理元数据的 Twig 扩展

通过 Twig 扩展以简单方式支持 Twitter Card 和 Facebook Open Graph Meta。

添加全局 Twig 变量以获取特定数据

####在 parameters.yml.dist 参数中定义特定账户数据: facebook_app_id: XXX twitter_widget_id: XXX twitter_default_account: XXX

####更新全局 twig: globals: facebook_app_id: %facebook_app_id% twitter_default_account: %twitter_default_account%

####在 twig 模板中调用 twig 扩展

partner 是一个实体,它包含生成基本 Open Graph 元数据和基本 Twitter Card 所需的所有信息(目前仅支持 restaurant.restaurant)。

{% block head_meta %}
    {{ allMetas({'title': partner.title, 'description':partner.description,
    'url': path('get_partner', { 'alias': partner.alias }) , 'object':partner, 'images': partner.partnerMedias}) }}
{% endblock %}

##使用切换语言功能

添加路由

##使用一些扩展的 mopa 表单

我们扩展了 mopa 表单小部件,添加了一些更新的小部件。请参阅 Resources/views/Form/fields.html.twig

并设置 mopa 使用该表单字段定义文件

mopa_bootstrap:
    form:
        templating:           DacorpExtraBundle:Form:fields.html.twig

##一些有用的服务 ###ymlFileManager: 加载 ymlFile 作为数组的服务

namespace YourCorp\CoreBundle\Services\Manager;

use Dacorp\ExtraBundle\Services\YmlFileManager;

class YmlRankedListManager
{
    /**
     * @var YmlFileManager
     */
    private $ymlFileManager;


    public function __construct(YmlFileManager $ymlFileManager)
    {
        $this->ymlFileManager = $ymlFileManager;
    }
    # inject the serice "dacorp.manager.yml_file" in your service and use it like this
    public function loadYmlRankedList($fileName='default_ranked_list.yml')
    {
        $dataArray = $this->ymlFileManager->loadYmlFile($fileName);
        $dataArray = $this->ymlFileManager->loadYmlFile($fileName);
        foreach ($dataArray as $key => $data) {
            // do stuff with data
        }
    }
}