vojtasvoboda/oc-brands-plugin

OctoberCMS品牌插件

1.0.9 2019-05-12 12:36 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:58:47 UTC


README

Codacy Scrutinizer Coverage License

在您的页面上展示品牌、合作伙伴、项目、展示、作品集或其他任何内容。无其他插件要求。已在最新的October CMS构建版本382上测试。

主要功能

  • 所有品牌的列表,带有分页分类过滤字母过滤
  • 可定制的Bootstrap布局(1-12列)
  • 一个品牌可以属于多个分类,包含标志和无限多的图片
  • 通过一个相册展示品牌详情
  • 实现了翻译
  • SiteSearch插件原生支持

用例

  • 展示带有外部链接(或无链接)的客户标志
  • 展示由标志代表的项目(品牌详情中的相册)
  • 展示合作伙伴及其合作详情
  • 展示我的作品集截图

创建品牌页面

  • 创建新页面
  • 如果您想按品牌分类过滤,将分类过滤器插入URL:/brands/:category?
  • 插入品牌组件
  • 选择品牌页面(品牌详情)和分类页面(分类中的品牌)
  • 如果您想按字母过滤,插入品牌字母组件

带有分类和字母过滤的品牌页面示例

title = "Brands"
url = "/brands/:category?"
layout = "default"
is_hidden = 0

[brands]
brandPage = "brand-detail"
categoryPage = "brands"
categoryFilter = "{{ :category }}"
perPage = 12
sortOrder = "ASC"
pageNumber = "{{ page }}"
perRow = 6
logoWidth = 300
logoHeight = 300

[letters]
brandsPage = "brands"
==
<h1>
	Brands
	{% if category %} in category {{ category.name }}{% endif %}
	{% if letter %} starts with "{{ letter }}"{% endif %}
</h1>

{% if category %}
<p>
    <a href="{{ 'brands' | page({category: ''}) }}">
        <small>&lt; all categories</small>
    </a>
</p>
{% endif %}

{% component 'letters' %}

{% component 'brands' %}

创建品牌详情页面

  • 创建新页面,URL如下:/brand/:slug/
  • 插入品牌组件
  • 选择分类页面(包含品牌的页面)

品牌页面示例

title = "Brand detail"
url = "/brand/:slug/"
layout = "default"
is_hidden = 0

[brand]
slug = "{{ :slug }}"
categoryPage = "brands"
==
{% component 'brand' %}

品牌链接

每个品牌可以有多种类型的链接

  1. 品牌详情链接 - 仅填写slug并创建品牌详情页面。
  2. 外部链接 - 填写外部链接参数,它将覆盖内部链接。
  3. 无链接 - 显示标志而没有任何链接,它将覆盖所有上述链接。

扩展插件

我使用此插件作为构建第一个插件的示例,因为它涵盖了管理一个实体(创建、更新、删除、更改顺序),创建一个关系(品牌-分类)并在前端渲染所有项目。

我还创建了如何轻松扩展插件功能的示例,并将所有这些示例放入品牌扩展示例存储库。

待办事项

  • 修复品牌详情中的页面标题
  • 更改分类顺序
  • 批量删除分类
  • 标签管理
  • 品牌详情 - 相册分页器

贡献

请向master分支发送Pull Request。请添加单元测试并确保所有单元测试都是绿色的。

许可

品牌插件是开源软件,在MIT许可下发布,与OctoberCMS平台相同。MIT许可