jekyll-uj-powertools 1.0.18 → 1.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/jekyll-uj-powertools/version.rb +1 -1
- data/lib/jekyll-uj-powertools.rb +50 -5
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8c7e740c9d5017dacc38b94f841a42d3726d112aefeee2408b902742a542097d
|
4
|
+
data.tar.gz: 7eb454eff46915e200c0e7ee60df8e6df4b528087e9cdbf3fc84f4da85bbcff4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2a97b33b2a4695b8cccb5c30c257ef176a3b5d161fd1a16d12f78b5f9ae0ac81cc628573db78f05f1c1e7fedbd90bcf5c9d3fdd9bac578e4bde83f94c9463b78
|
7
|
+
data.tar.gz: b62a566223eeae447f22f6dadc26f49de6a8b612de26eb149ef55a97199b27f7751d56d70e59f611b24adebd4bce7efed2d81119052f1599226f764c729fb01e
|
data/lib/jekyll-uj-powertools.rb
CHANGED
@@ -49,17 +49,62 @@ module Jekyll
|
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
|
-
# class InjectData <
|
52
|
+
# class InjectData < Generator
|
53
|
+
# safe true
|
54
|
+
# priority :low
|
55
|
+
|
56
|
+
# def generate(site)
|
57
|
+
# site.pages.each do |page|
|
58
|
+
# # Inject a random number into the page's data
|
59
|
+
# page.data['random_number'] = rand(100) # Random number between 0 and 99
|
60
|
+
|
61
|
+
# next unless page.data['layout'] # Skip pages without layouts
|
62
|
+
|
63
|
+
# # Find the layout file by its name
|
64
|
+
# layout_name = page.data['layout']
|
65
|
+
# layout = site.layouts[layout_name]
|
66
|
+
|
67
|
+
# if layout && layout.data
|
68
|
+
# # Merge layout front matter into page's "layout_data"
|
69
|
+
# page.data['layout_data'] = layout.data
|
70
|
+
# end
|
71
|
+
# end
|
72
|
+
# end
|
73
|
+
# end
|
74
|
+
|
53
75
|
class InjectData < Generator
|
54
76
|
safe true
|
55
77
|
priority :low
|
56
78
|
|
57
79
|
def generate(site)
|
58
|
-
|
59
|
-
|
80
|
+
# Process pages
|
60
81
|
site.pages.each do |page|
|
61
|
-
page
|
62
|
-
|
82
|
+
inject_data(page, site)
|
83
|
+
end
|
84
|
+
|
85
|
+
# Process documents in all collections
|
86
|
+
site.collections.each do |_, collection|
|
87
|
+
collection.docs.each do |document|
|
88
|
+
inject_data(document, site)
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
private
|
94
|
+
|
95
|
+
def inject_data(item, site)
|
96
|
+
# Inject a random number into the item's data
|
97
|
+
item.data['random_number'] = rand(100) # Random number between 0 and 99
|
98
|
+
|
99
|
+
return unless item.data['layout'] # Skip items without layouts
|
100
|
+
|
101
|
+
# Find the layout file by its name
|
102
|
+
layout_name = item.data['layout']
|
103
|
+
layout = site.layouts[layout_name]
|
104
|
+
|
105
|
+
if layout && layout.data
|
106
|
+
# Merge layout front matter into item's "layout_data"
|
107
|
+
item.data['layout_data'] = layout.data
|
63
108
|
end
|
64
109
|
end
|
65
110
|
end
|