Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Sluggable posts for Nesta CMS

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Gemfile
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.mdown
Octocat-spinner-32 Rakefile
Octocat-spinner-32 nesta-plugin-sluggable.gemspec

Sluggable posts for Nesta CMS

This plugin allows you to create Nesta articles with a numeric filename (probably based on date and serial) but serve the page with an SEO-friendly slug, like so The slug is optional. As long as the numeric filename path is included, Nesta will redirect to add the current slug.

Sluggable posts provide a few benefits:

  • You can change the slug if your headline changes and Nesta will automatically find the new article.
  • You don't have to know your headline and slug when you create your file.
  • Mangled, truncated URLs can still find the way to the latest version of your page.


To install add the plugin to your Nesta Gemfile

gem "nesta-plugin-sluggable"

Setting the slug

Slugs can be set in the page metadata:

date: 2011-09-24
slug: this-is-my-first-sluggable-post

# This is the headline

Alternatively, if not set, Sluggable will dasherize the heading to create the slug.


In order to avoid a 301 redirect for all sluggable page links on your site, use the permalink method in your templates instead of abspath.


  • Nesta CLI option to create posts

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.


Copyright (c) 2011 Wynn Netherland. See LICENSE for details.

Something went wrong with that request. Please try again.