zoukankan      html  css  js  c++  java
  • GHOST CMS

    Channels

    If you want something more flexible than taxonomies, but less rigid than collections, then channels might be for you.

    A channel is a custom stream of paginated content matching a specific filter. This allows you to create subsets and supersets of content by combining or dividing existing posts into content hubs.

    Unlike collections, channels have no influence over a post's URL or location within the site, so posts can belong to any number of channels.

    The best way to think of channels is as a set of permanent search results. It's a filtered slice of content from across your site, without modifying the content itself.


    Creating a channel

    Channels are defined as a custom route, with a custom controller property called channel, and a filter to determine which posts to return.

    routes:
      /apple-news/:
        controller: channel
        filter: tag:[iphone,ipad,mac]
      /editors-column/:
        controller: channel
        filter: tag:column+primary_author:cameron

    In this example there are two channels. The first is a channel which will return any posts tagged iPhoneiPad or Mac on a custom route of site.com/apple-news/.

    The second is a special Editor's Column area, which will return any posts tagged with Column, but only if they're explicitly authored by Cameron.

    These are two small examples of how you can use channels to include and exclude groups of posts from appearing together on a custom paginated route, with full automatic RSS feeds included as standard. Just add /rss/ to any channel URL to get the feed.


    When to use channels vs collections

    Collections and channels share a lot of similarities, because they're both methods of filtering a set of posts and returning them on a custom URL.

    So how do you know when to use which?

    You should generally use a collection when...

    There's a need to define permanent site structure and information architecture

    • You're sorting different types/formats of content
      eg. posts are blog posts OR podcasts
    • You're filtering incompatible content
      eg. posts are either in English OR German
    • You want the parent filter to influence the post's URL
      eg. an index page called /news/ and posts like /news/my-story/

    You might be better off with a channel if...

    All you need is a computed view of a subsection of existing content

    • You're combining/grouping different pieces of content
      eg. posts tagged with news AND featured
    • You're dividing existing streams of content with multiple properties
      eg. posts tagged with news but NOT authored by steve
    • You want to be able to update/change properties without affecting post URLs
      eg. quickly creating/destroying new sections of a site without any risk

    If you're still not sure which is the best fit for you, drop by the Ghost Forums and share what structure you're hoping to accomplish. There's a large community of Ghost developers around to help.

  • 相关阅读:
    三方登录微博url接口
    微博三方登录流程 (原理)
    celery配置与基本使用
    spring 验证框架
    IDEA 插件整理
    spring security笔记 默认登陆页面源码
    EXTJS7 自定义日期时间选择输入框
    EXTJS7 combobox本地模式 动态修改选项
    EXTJS7 combobox 下拉加载数据源码
    nginx 反向代理端口号丢失处理
  • 原文地址:https://www.cnblogs.com/QDuck/p/12081553.html
Copyright © 2011-2022 走看看