mirror of https://github.com/docker/docs.git
jekyll: pageless_redirects plugin
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
parent
2e732e27da
commit
01eaa95d67
|
@ -0,0 +1,38 @@
|
|||
require 'jekyll'
|
||||
require 'octopress-hooks'
|
||||
|
||||
module Jekyll
|
||||
class RedirectPage < Jekyll::Page
|
||||
def initialize(site, src, redirect_to)
|
||||
puts " #{src} => #{redirect_to}"
|
||||
@site = site
|
||||
@base = site.source
|
||||
@dir = src
|
||||
@name = "index.html"
|
||||
process(@name)
|
||||
@data = {
|
||||
"sitemap" => false,
|
||||
"redirect_to" => redirect_to
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
class PagelessRedirects < Octopress::Hooks::Site
|
||||
def post_read(site)
|
||||
beginning_time = Time.now
|
||||
puts "Starting plugin pageless_redirects.rb..."
|
||||
|
||||
if File.file?("_redirects.yml")
|
||||
rd = YAML.load_file("_redirects.yml")
|
||||
rd.each do |redirect_to, srcs|
|
||||
srcs.each do |src|
|
||||
site.pages << RedirectPage.new(site, src, redirect_to)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end_time = Time.now
|
||||
puts "done in #{(end_time - beginning_time)} seconds"
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue