wpgoの使い方

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]で(たぶんマルチバイトがらみ?)でパースエラーになるなどまだまだこれからですが、今後が楽しみ!

WP-CLI 0.16がリリースされましたよっと

WP-CLI 0.16がリリースされたので、

http://wp-cli.org/blog/version-0.16.html

よりさくっとご紹介。

WP-Cronの管理

スケジュールされているcronイベントのすべてを見るには:

$ wp cron event list
+-----------------------------+---------------------+-----------------------+------------+
| hook                        | next_run_gmt        | next_run_relative     | recurrence |
+-----------------------------+---------------------+-----------------------+------------+
| wp_version_check            | 2014-07-01 04:05:59 | 3 hours 50 minutes    | 12 hours   |
| wp_update_plugins           | 2014-07-01 04:05:59 | 3 hours 50 minutes    | 12 hours   |
| wp_update_themes            | 2014-07-01 04:05:59 | 3 hours 50 minutes    | 12 hours   |
| update_network_counts       | 2014-07-01 04:06:05 | 3 hours 50 minutes    | 12 hours   |
| wp_maybe_auto_update        | 2014-07-01 07:51:00 | 7 hours 35 minutes    | 12 hours   |
| wp_scheduled_delete         | 2014-07-01 16:06:05 | 15 hours 50 minutes   | 1 day      |
+-----------------------------+---------------------+-----------------------+------------+

特定のcronイベントを実行するには:

$ wp cron event run wp_scheduled_delete
Success: Successfully executed the cron event 'wp_scheduled_delete'

登録済みのスケジュールされているcronを調べるには:

$ wp cron schedule list
+------------+-------------+----------+
| name       | display     | interval |
+------------+-------------+----------+
| hourly     | Once Hourly | 3600     |
| twicedaily | Twice Daily | 43200    |
| daily      | Once Daily  | 86400    |
+------------+-------------+----------+

その他詳細は wp help cron でご覧ください。

コアのチェックサムの確認

インストールしたWordPressがウイルスに侵されていないことを確認するため、 wp core verify-checksums はWordPress.orgからチェックサムを取得し、ローカルのファイルと比較します。

〜略〜

チェックが問題なく成功すると次のように表示されます:

$ wp core verify-checksums
Success: WordPress install verifies against checksums.

もしコアファイルが変更されていると次のように表示されます:

$ wp core verify-checksums
Warning: File doesn't verify against checksum: readme.html
Error: WordPress install doesn't verify against checksums.

新しい装い

WP-CLI.org の装いがとても素晴らしくフレッシュになりました。ぜひTwitterでつぶやいてください (もしくはイシュートラッカーにどんなバグでもお知らせください)

その他の変更

追加:

  • wp * meta list: 与えられた投稿、コメント、もしくはユーザーのメタバリューをリスト表示します。
  • wp * meta delete: コアの挙動を真似た値の渡し方をサポート。
  • wp post generate--post_author=<post-author> 引数がユーザーID、ログイン、メールアドレスをサポート。
  • wp scaffold plugin: サンプルのreadme.txtを含むようになりました。
  • wp (theme|plugin) install: 親ディレクトリがない場合に作成するようにしました。
  • wp user create: --first_name=<first-name>--last_name=<last-name> のパラメータを追加しました。
  • wp user import-csv--skip-update フラグで既存のユーザーのアップデートをしなようにしました。
  • メッセージと警告を全体的により整った、より助けになるものにしました。

修正:

  • Network: True ヘッダーを持ったプラグインでマルチサイトのときに警告を出さずに有効化できるようにしました。
  • 使用法の説明に無効化されたコマンドを表示しないようにしました。
  • bash と ZSH の両方で自動補完ファイルが正常に動作するようにしました。
  • wp core update: で、zipファイルから直接アップデートできるようにしました。

解決したイシュー の完全な一覧は Github でご覧になれます。

このリリースのコントリビューター: boonebgorges, danielbachhuber, jmslbam, johnbillion, joshlevinson, mboynes, rodrigoprimo, ryanduff, scribu, szepeviktor, westonruter

WP-CLIのアンケート結果

WP-CLIで先日あったアンケートの結果が書かれていたのでご紹介。

質問の中に「WP-CLIに他にしてほしいことはありますか?」のような質問があって、わたしは特に思いつかなくて「make coffee ;-)」と書いたんですが、最後の方を読むと、他にも同じように考えていた人がいたみたいですw

Continue reading

WP-CLI 0.15.1 がリリースされたよよよ。

WP-CLIの0.15.1がリリースされたので、そのリリースノートの訳をば。

http://wp-cli.org/blog/version-0.15.1.html

  • メニューアイテムをアップデートしたときのメニューアイテムの保持。複数のメニューアイテムを一括で削除できるようにしました。
  • 空のサイドバーにウィジェットを追加できるように下。無効化時にサイドバーからindex=0のウィジェットを確実の取り除くようにしました。
  • WordPressインストール時に --user を無視するようにしました。
  • 名称エンティもしくは --allなしで wp (theme|plugin) update を利用した時に警告を発するようにしました。
  •  --version もしくは wp widget addとが指定された wp core update の利用時のPHPノーティスを解決しました。
  • ngettext()の代わりにWordPressの _n() を使うようにしました。
  • PHP 5.5.11/12 (そしてたぶん他の5.5.xバージョン)でのセグメンテーションフォールトを修正しました。

解決されたイシュー の全リストはGithub上で参照できます。

このリリースのコントリビュータは次の方々です: boonebgorges, danielbachhuber, jmslbam, mboynes, szepeviktor, westonruter