
OneSignal 公式 WordPress プラグインをカスタム投稿タイプに対応させるプラグインを公開しました
※ OneSignal – Free Web Push Notifications v1.8.0 からカスタム投稿タイプに対応した為、本プラグインは不要になりました。
こんにちは、KUCKLU(くっくる)です。
先日、WordPress に Web Push 通知を手軽に導入しよう!という記事を公開しました。
この記事を公開したあと、とある有名ブログサイトの方が OneSignal を導入してみたみたいで、色々いじっていたら、OneSignal が公式に開発/配布しているプラグイン “OneSignal – Free Web Push Notifications” がカスタム投稿タイプには対応していないと Twitter で呟いていました。確かに、プラグインのソースを軽くみると、ポストタイプが post 指定でハードコーディングされています。サポートフォーラムも覗いてみましたが、どうやら OneSignal の公式プラグインの方では、カスタム投稿タイプに対応させる気はないようでした。
https://wordpress.org/support/topic/custom-post-type-125?replies=3
需要はあると思うのですが、面倒臭かったんですかね?(笑)確かにカスタム投稿タイプへの対応は色々と大変で、くっくるも幾度と無く泣きました。とはいえ、このサイトも、ポートフォリオなどいくつかのカスタム投稿タイプを使用していますし、カスタム投稿タイプでも Web Push 通知ができたら便利だなーと思います。なので、少し息抜きに強引な方法でアドオン的プラグインを作ってみました。
VA OneSignal in Custom Post Types
VA OneSignal in Custom Post Types というプラグインを本日 WordPress.org に登録しました。
[appbox wordpress va-onesignal-in-custom-post-types]
このプラグインは、”OneSignal – Free Web Push Notifications” をカスタム投稿タイプに強引に対応させるプラグインです。”OneSignal – Free Web Push Notifications” の一部のアクションを削除し、”OneSignal – Free Web Push Notifications” の PHP Class をオーバーライドした PHP Class を、再度アクションフックにフックさせるという手法をとっています。
やってることは結構単純だと思いますが、”OneSignal – Free Web Push Notifications” が突然の仕様変更などしてきた場合、動かなくなる危険もあります。ただ、オーバーライドしている部分は多くないので、仕様変更への対応もすぐに行えると思います。あまりにも大きな仕様変更だと、諦める可能性もありますけれど(笑)
最後に
今回のプラグインは、シンタロヲフレッシュ (@shintarowfresh) さんとの Twitter でのやり取りがキッカケで作成しました。ブログネタのご提供ありがとうございます(・∀・)
フレッシュさんの Web サイト(ブログ)は、Web 制作のアイデアとチップス、子育て、ガジェットレビューなどがいっぱいです。あと、PC で表示した時に右側に表示される写真やロゴのギミックとか、細かいところが凄く作りこまれていて素敵なサイトです。Twitter でお話ししたのはここ最近の話しですが、個人的には昔からフレッシュさんの記事にお世話になっています。
https://blog.quusookagaku.com/
ぜひ、読んでみてください。オススメです。
それでは本日はここまで。
くっくるでした。
[amazonjs asin=”477414813X” locale=”JP” title=”パーフェクトJavaScript (PERFECT SERIES 4)”]
[amazonjs asin=”4797383305″ locale=”JP” title=”ビジネスサイトをこれからつくる WordPressデザイン入門”]