Craft CMSのTasks

Craft CMSのTasksを利用して、旧サイトから大量のデータを変換してインポートする処理を実装しようとしていたりします。

TasksはWordPressでいうと"wp_cron"と同じようなもので、サイトへのアクセスをトリガーに処理の実行を開始します。

Craft CMSでは、以下のようなURLでタスクのスケジュールを開始します。
http://craft.domain/actions/pluginName/actionName
(タスクのスケジュール登録方法はコントローラー以外でも可)

簡単な実装であればTaskとControllerとServiceの実装だけで済みます。

実行中は、定義したステップ数を最大値とした円形のプログレス表示がダッシュボードに表示されて、非同期でステップを順次処理していくのですが、プログレス表示は一度エラーにならないと表示されません…。"desc"の部分はTaskクラスで定義したdescriptionが表示されます。


エラーになると、エラーメッセージが表示され、再スケジュールかキャンセルを選択できます(ただし、詳細なエラーメッセージは定義できない)。再スケジュールをすると、ダッシュボードをリロードしたタイミングでプログレス表示がメニューに追加されます。


通常だとタイムアウトになってしまうような処理を分割して処理したい時には便利だと思います。正常終了したときは、一切結果が表示されないので、正常処理時も結果を確認したいような処理はプラグインのコントロールパネル等で実装したほうがよさそうです。

カスタムタクソノミーのメタボックスだけを非表示にする

CPT UIにはmeta_box_cbのオプションが無いので、投稿画面の右側に表示されるメタボックスだけを非表示にするには、こんなフィルタを書く。

function _disable_custom_taxonomy_metabox($args, $taxonomy, $object_type) {
if ($taxonomy == 'foo' || $taxonomy == 'bar') {
$args['meta_box_cb'] = false;
}
return $args;
}
add_filter('register_taxonomy_args', '_disable_custom_taxonomy_metabox', 10, 3);

これでカスタムタクソノミー"foo"と"bar"のメタボックスが消える(左側のメニューには表示される)。

古いAppleのカタログが出てきた

25年くらい前のカタログが大量に出てきました。主にMacの周辺機器カタログ(ここに載せたもの以外だとYanoとかMagviewとか)です。

この頃は、Macintosh LCとかSE 30とかを持っていた頃なので、Apple関連のカタログばかりを集めていた気がします。

16MB SIMMが13万円とか、5インチハードディスクとか、時代を感じさせます。







































































Firefox Quantum

うっかりFirefoxをQuantumにアップデートしてしまい、WebExtensionsに移行していないプラグインが動作しなくなってしまったのですが、その中にNoScriptも含まれていて、広告やトラッキング系、初見ドメインのスクリプトをブロックできなくなってしまいました。

NoScriptのサイトを見ると、FireFox 58 Developer Editionをインストールして extensions.legacy.enabled を trueに設定すれば、旧式プラグインも動作すると書かれていたので、早速インストールしてみると、NoScriptは動作しました。

Tab Mix Plusは動作しなかったので、代わりにUndo Close Tabをインストールして新規タブの設定をちょっとだけ弄って我慢することに(本当は別ドメインのリンクは全部新規タブで開きたいけど)。

公開バージョンやベータでは、この設定を行っても旧式プラグインは動作しないので、しばらくDeveloper Editionでプラグインの対応を待ってみようと思います。



iPhone X

ソフトバンクの機種変更で優先権の無いユーザーには発売日入荷分の割当が無かったようで(スペースグレイ256GB)、1週間遅れで入手しました。それならそれで、予約時に告知しとけよと思うのですが、かといって、発売日に入手したかったわけでもなく、知っていたら必死になって16:01に予約しなくてもよかったのに、という徒労感のほう強いです。

iPhone Xのアクセサリ


すんなり予約できたので、「発売日確定やで!」と思い込み、Qi、ケース、保護フィルムなどを急いで調達してしまい、もっと吟味すればよかったなあと。

Qiはこれ。Ewin Qi ワイヤレス充電器

Androidでの口コミを頼りに選びました。ど真ん中にiPhone Xを置くと、ほとんどラグ無しで充電が開始されます。iPhone Xは、まだ急速無線充電に対応していないようですが、半日使った感じだと、この充電器で問題無さそうでした。

保護フィルムはこれ。KuGi iphoneX ガラスフィルム

KuGiのガラスフィルムは失敗でした。四隅が浮いているのか気泡が取れません。というより、サイズが微妙に合っていない気もします。口コミを見るとバラツキが多いようなので、このメーカーのものは避けた方がいいかも。

ケースはこれ。Spigen iPhone X ケース

iPhone 6 Plusを使い始めた頃から、サイズが大きくなったこともあって、落としそうになることが多くなったので、TPUのケースしか使っていません。変色が気になりますが、変色したら買い換えるくらいで丁度よいと思っています。ケースに入れたままの無線充電も問題無く出来ました。

iPhone 7 Plusからの移行


iOS11のデバイス同士だと、旧端末と新端末を近付けるだけで移行できるので簡単。

Walletは、旧端末のWalletからカードを削除すると、新端末に再追加(新規追加ではない)が出てくるので、Suicaのパスワードやクレカのセキュリティーコードを入力するだけ。

ここ最近、iPhone 6 Plus、iPhone 6s Plus、iPhone 7 Plusと、ずっとPlusを買い続けてきたので、画面サイズこそ大きいものの、縦長のiPhone Xに違和感があるかもしれないと思っていたのですが、ほとんど違和感は感じませんでした。7 Plusより一回り小さいので、むしろ扱いやすい。ホームボタンが無い点は数分で慣れてしまったので、問題無さそうです。