Skip to content

hihihippp/v2_myblog

Repository files navigation

Example 03::Tag and Collection pagination

This example bookshop website uses collections to organize its books^*. The site relies on pagination of its books by both collections and tags. The site shows how to paginate by single, multiple or all collections at the same time.

The site uses the pretty permalink structure. It also demonstrates advanced sorting features such as nested fields.

The site is generated using the jekyll built in new command jekyll new myblog and it uses the default minima theme.

After generating the pagination gem was installed using

gem install jekyll-paginate-v2

^* It could be argued that the bookstore should have just used categories here and collections were better suited to separate things into 'books', 'DVDs', 'Games' etc...

Structure

The site has three types of document collections _biography/, _fantasy/, _romance/. In addition to that the bookstore also has a blog and those posts are stored under blog/_posts.

All books have multiple tags assigned to them.

Permalinks are configured to the pretty format site-wide. The pagination logic handles this configuration without problems and constructs the correct sub url structure.

Pagination pages are:

  • biography/biograpy.md
  • biography/biograpy-musicians.md
  • romance/romance-historical.md
  • tags/contemporary.md
  • tags/fantasy.md
  • tags/sci-fi.md
  • index.md
  • byisbn.md

Most pages are self explanatory and most sort books by the nested attribute rank.

Page: byisbn.md

Demonstrates how to have multiple pagination pages defined in the root of the site without their pagination pages clashing. Uses permalinks to achieve this.

Page: Under tags/

Demonstrate how to paginate across multiple collections by using the collections: all front matter configuration

Setup Configuration

The gem is added to the _config.yml file under

gems:
  - jekyll-paginate-v2

as well as to the Gemfile into the main loop

group :jekyll_plugins do
  gem "jekyll-paginate-v2"
  gem "jekyll-feed"
end

At this point is is advisable to delete the Gemfile.lock file to clear out any potential issues with gem caching and dependency issues (no worries this file will be auto generated for you again).

Try building the site yourself using jekyll build or jekyll serve.

Cheers ❤️

About

test Travis and json-server locally

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages