aboutsummaryrefslogtreecommitdiff
path: root/_plugins/iterator.rb
diff options
context:
space:
mode:
Diffstat (limited to '_plugins/iterator.rb')
-rw-r--r--_plugins/iterator.rb49
1 files changed, 0 insertions, 49 deletions
diff --git a/_plugins/iterator.rb b/_plugins/iterator.rb
deleted file mode 100644
index da0b5f0a..00000000
--- a/_plugins/iterator.rb
+++ /dev/null
@@ -1,49 +0,0 @@
-##
-## Author: Jose Gonzalez - https://github.com/josegonzalez
-## Source URL: https://github.com/josegonzalez/josediazgonzalez.com/blob/master/_plugins/iterator.rb
-##
-
-#module Jekyll
- #class Site
- #alias_method :orig_site_payload, :site_payload
-
- ## Constuct an array of hashes that will allow the user, using Liquid, to
- ## iterate through the keys of _kv_hash_ and be able to iterate through the
- ## elements under each key.
- ##
- ## Example:
- ## categories = { 'Ruby' => [<Post>, <Post>] }
- ## make_iterable(categories, :index => 'name', :items => 'posts')
- ## Will allow the user to iterate through all categories and then iterate
- ## though each post in the current category like so:
- ## {% for category in site.categories %}
- ## h1. {{ category.name }}
- ## <ul>
- ## {% for post in category.posts %}
- ## <li>{{ post.title }}</li>
- ## {% endfor %}
- ## </ul>
- ## {% endfor %}
- ##
- ## Returns [ {<index> => <kv_hash_key>, <items> => kv_hash[<kv_hash_key>]}, ... ]
-
- #def make_iterable(kv_hash, options)
- #options = {:index => 'name', :items => 'items'}.merge(options)
- #result = []
- #kv_hash.sort.each do |key, value|
- #result << { options[:index] => key, options[:items] => value }
- #end
- #result
- #end
-
- #def site_payload
- #payload = orig_site_payload
- #payload['site']['iterable'].merge!({
- #'categories' => make_iterable(self.categories, :index => 'name', :items => 'posts'),
- #'tags' => make_iterable(self.tags, :index => 'name', :items => 'posts')
- #})
- #payload
- #end
-
- #end
-#end