jekyll-base.rb 453 B

12345678910111213141516171819202122232425
  1. def get_dir(dir)
  2. size = dir.split('/').size
  3. if size == 2
  4. '..'
  5. elsif size == 3
  6. '../..'
  7. elsif size == 4
  8. '../../..'
  9. elsif size == 5
  10. '../../../..'
  11. else
  12. '.'
  13. end
  14. end
  15. module Jekyll
  16. Jekyll::Hooks.register :pages, :pre_render do |page, jekyll|
  17. jekyll.site['base'] = get_dir(page.dir)
  18. end
  19. Jekyll::Hooks.register :documents, :pre_render do |doc, jekyll|
  20. jekyll.site['base'] = get_dir(doc.relative_path)
  21. end
  22. end