Method: Jekyll::Site#read_data
- Defined in:
- lib/jekyll/site.rb
#read_data(dir) ⇒ Object
Read and parse all yaml files under <source>/<dir>
Returns nothing
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 |
# File 'lib/jekyll/site.rb', line 207 def read_data(dir) base = File.join(self.source, dir) return unless File.directory?(base) && (!self.safe || !File.symlink?(base)) entries = Dir.chdir(base) { Dir['*.{yaml,yml}'] } entries.delete_if { |e| File.directory?(File.join(base, e)) } entries.each do |entry| path = File.join(self.source, dir, entry) next if File.symlink?(path) && self.safe key = sanitize_filename(File.basename(entry, '.*')) self.data[key] = YAML.safe_load_file(path) end end |