LoginSignup
0
1

More than 5 years have passed since last update.

Markdown-Writer for AtomとHexoとのタグ/カテゴリ/ポストの連携

Posted at

対象

  1. AtomでMarkdown形式の文書を書くのにMarkdown-Writer for Atomを使用している。
  2. 上記プラグインの機能からHexoのタグ/カテゴリ/ポストを参照したい。
  3. 公式サイトのページで紹介(Settings for Front Matters)されている、hexo-generator-atom-markdown-writer-metaはHexoがversion 3.xでAPIが変わった経緯で動かない。

という人向けのエントリです。

実装

以下のスクリプトを scripts/meta.js に配置します。これで http://exmaple.net/meta.json でアクセスできるようになります。

meta.js
// See: https://github.com/zhuochun/md-writer/wiki/Settings-for-Front-Matters
// Path: scripts/meta.js
// Author: Masayuki Higashino
// License: MIT
hexo.extend.generator.register('meta', function(locals) {
  var meta = {
    tags: [],
    posts: [],
    categories: []
  }
  locals.tags.sort('name').each(function(tag) {
    meta.tags.push(tag.name)
  })
  locals.categories.sort('name').each(function(category) {
    meta.categories.push(category.name)
  })
  locals.posts.sort('name').each(function(post) {
    meta.posts.push({
      title: post.title,
      url: encodeURI(post.permalink),
      date: post.updated.toDate().toISOString() || post.date.toDate().toISOString()
    })
  })
  return {path: 'meta.json', data: JSON.stringify(meta)}
}

Gistはこちらにあります。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1