我添加了一个markdown文件,但我不想发布它

时间:2012-09-29 21:45:08

标签: markdown octopress

我使用rake new_post["title"]在_post目录中生成一个新的降价文件,但我不希望在完成之前发布此帖子。我怎么能这样做?

2 个答案:

答案 0 :(得分:5)

published: false添加到降价文件顶部的元数据中。

一些旧版本的Octopress仍会以预览模式显示帖子。但是,当您生成并部署网站时,published: false的帖子将不会发布。

答案 1 :(得分:1)

rake new_post不会发布该页面。下面给出了相同的源代码。

# usage rake new_post[my-new-post] or rake new_post['my new post'] or rake new_post (defaults to "new-post")
desc "Begin a new post in #{source_dir}/#{posts_dir}"
task :new_post, :title do |t, args|
  raise "### You haven't set anything up yet. First run `rake install` to set up an Octopress theme." unless File.directory?(source_dir)
  mkdir_p "#{source_dir}/#{posts_dir}"
  args.with_defaults(:title => 'new-post')
  title = args.title
  filename = "#{source_dir}/#{posts_dir}/#{Time.now.strftime('%Y-%m-%d')}-#{title.to_url}.#{new_post_ext}"
  if File.exist?(filename)
    abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n'
  end
  puts "Creating new post: #{filename}"
  open(filename, 'w') do |post|
    post.puts "---"
    post.puts "layout: post"
    post.puts "title: \"#{title.gsub(/&/,'&')}\""
    post.puts "date: #{Time.now.strftime('%Y-%m-%d %H:%M')}"
    post.puts "comments: true"
    post.puts "categories: "
    post.puts "---"
  end
end

对文件进行更改后,可以调用rake generate(将帖子和页面生成到公共目录中)。