Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
J

jekyll-feed

> 编程语言
Open source

:memo: A Jekyll plugin to generate an Atom (RSS-like) feed of your Jekyll posts

881 stars0 likes1 views
WebsiteGitHub

About

:memo: A Jekyll plugin to generate an Atom (RSS-like) feed of your Jekyll posts

Jekyll Feed plugin

A Jekyll plugin to generate an Atom (RSS-like) feed of your Jekyll posts

Installation

Add this line to your site's Gemfile:

ruby
gem 'jekyll-feed'

And then add this line to your site's _config.yml:

yaml
plugins:
  - jekyll-feed

:warning: If you are using Jekyll ` section, to output the necessary metadata.

SmartyPants

The plugin uses Jekyll's smartify filter for processing the site title and post titles. This will translate plain ASCII punctuation into "smart" typographic punctuation. This will not render or strip any Markdown you may be using in a title.

Jekyll's smartify filter uses kramdown as a processor. Accordingly, if you do not want "smart" typographic punctuation, disabling them in kramdown in your _config.yml will disable them in your feed. For example:

yaml
kramdown:
  smart_quotes:               apos,apos,quot,quot
  typographic_symbols:        {hellip: ...}

Custom styling

Want to style what your feed looks like in the browser? When a XSLT Styleheet file named feed.xslt.xml exists at the root of your repository, a link to this stylesheet is added to the generated feed.

Why Atom, and not RSS?

Great question. In short, Atom is a better format. Think of it like RSS 3.0. For more information, see this discussion on why we chose Atom over RSS 2.0.

Categories

Jekyll Feed can generate feeds for each category. Simply define which categories you'd like feeds for in your config:

yaml
feed:
  categories:
    - news
    - updates

Posts limit

By default the plugin limits the number of posts in the feed to 10. Simply define a new limit in your config:

yaml
feed:
  posts_limit: 20

Collections

Jekyll Feed can generate feeds for collections other than the Posts collection. This works best for chronological collections (e.g., collections with dates in the filenames). Simply define which collections you'd like feeds for in your config:

yaml
feed:
  collections:
    - changes

By default, collection feeds will be outputted to /feed/.xml. If you'd like to customize the output path, specify a collection's custom path as follows:

yaml
feed:
  collections:
    changes:
      path: "/changes.atom"

Finally, collections can also have category feeds that are outputted as /feed//.xml. Specify categories like so:

yaml
feed:
  collections:
    changes:
      path: "/changes.atom"
      categories:
        - news
        - updates

Excerpt Only flag

Optional flag excerpt_only allows you to exclude post content from the Atom feed. Default value is false for backward compatibility.

When in config.yml is true then all posts in feed will be without `` tags.

yaml
feed:
  excerpt_only: true

The same flag can be used directly in post file. It will disable `` tag for selected post. Settings in post file have higher priority than in config file.

Tags

To automatically generate feeds for each tag you apply to your posts you can add a tags setting to your config:

yaml
feed:
  tags: true

If there are tags you don't want included in this auto generation you can exclude them

yaml
feed:
  tags:
    except:
      - tag-to-exclude
      - another-tag

If you wish to change the location of these auto generated feeds (/feed/by_tag/.xml by default) you can provide an alternative folder for them to live in.

yaml
feed:
  tags:
    path: "alternative/path/for/tags/feeds/"

If you only want to generate feeds for a few tags you can also set this.

yaml
feed:
  tags:
    only:
      - tag-to-include
      - another-tag

Note that if you include a tag that is excluded a feed will not be generated for it.

Skip development

Use disable_in_development: true if you want to turn off feed generation when jekyll.environment == "development", but don't want to remove the plugin (so you don't accidentally commit the removal). Default value is false.

yaml
feed:
  disable_in_development: true

Contributing

  1. Fork it (https://github.com/jekyll/jekyll-feed/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rubyatomjekyll-pluginrssruby

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言