wpgoとは?
Command-line tool to interact with WordPress blogs. You can read, publish and administer to some degree.
WordPressブログとやりとりするためのコマンドラインツールです。読んだり、公開したり、ある程度の管理ができたりします。
https://github.com/Automattic/wpgo より
なぜかここ、Automattic/wpgoには書かれてないけど、マットのブログの記事を見るとGoで書かれてるのでwpgoのようですね。
セットアップ (Mac前提です)
コマンドラインツール自体のインストールの方法が書いてなかったので、とりあえずwpgoのリポジトリをgit cloneしてbinの中のwpgo-osxをwpgoに名前変えて~/Applicationsに移動。置き場所はパスが通ってるとこならどこでもいいかと。そのうちたぶんhomebrewに入るでしょう。
で、WordPress.comか、自分でインストールしたWordPressの場合はJetpackでJSON APIを有効にします。
次に、各ブログの認証トークンとブログIDを取得します。
これを取得するには
https://rest-access.test.apokalyptik.com/
にアクセスする必要があるのですが、SSLエラーが表示されます。
READMEには
which looks totally sketchy but it is run by a good guy, trust me
まったくもって怪しいけど、運営者はいいやつなんでオイラを信じて
と書いてありますが、まぁそのへんはご自分の判断で!
で「click here to begin」をクリックするとwordpress.com/oauth2の認証画面に飛びますので認証します。
するってーと、
stdClass Object
(
[access_token] => ABCDEFGH123456
[token_type] => bearer
[blog_id] => 123456
[blog_url] => http://example.com
[scope] =>
)
のような画面が表示されるので、どっかにコピペしときましょー。
トークンとブログIDを取得したら ~/.wpgo.conf を作り、次の2つのパラメータを入れます:
token = ABCDEFGH123456
blog_id = 123456
複数のブログで利用するには上のパラメータの上に [name] でラベルを付けます。ブラケットの中のnameはコマンドラインをタイプするときの名前になります。
[mkaz]
token = ABCDEF123456
blog_id = 123456
[tinker]
token = ZYXWVU987654
blog_id = 987654
コマンド
サイトがひとつの場合
$ wpgo read
$ wpgo read [post-id]
$ wpgo post filename.md
$ wpgo stats
$ wpgo upload image.jpg
サイトが複数の場合はラベルを使います
$ wpgo mkaz read
$ wpgo mkaz read [post-id]
$ wpgo mkaz post filename.md
$ wpgo mkaz stats
$ wpgo mkaz upload image.jpg
投稿の公開
ローカルのMarkdownのファイルを投稿記事として公開(下書きでも)できます。
フォーマットはsample-post.md を見るといいでしょう。
$ wpgo post sample-post.md
helpもなかったり、wpgo read [post-id]で(たぶんマルチバイトがらみ?)でパースエラーになるなどまだまだこれからですが、今後が楽しみ!