このblogを書き始めた頃は、スラッグやカテゴリー、moreの付け忘れを毎回注意していてもうっかり忘れてしまい「あー!しまった(>_<)」となることが多かったです。それを防止するために子テーマのfunctions.phpに追加をして忘れていればメッセージを出したり、実際に投稿する時の確認画面を出すようにしました。いくつかサイトを運営しているとfunctions.phpをカスタマイズするのも面倒になってプラグインにしました。今回そのプラグインを少し見直してさらに使いやすくしてみたのでそれについて書きます。
Warn when you post v1.1 とは?作った理由
投稿、固定ページ作成時に警告をするためのプラグインです。私が作ったプラグインなので、このblogにしか置いていませんがファイルはコチラになります↓
このプラグインを作ろうと思った理由は
・「下書きとして保存」を押そうとしてついうっかり「公開」を押してしまい、書きかけのblogが公開されてしまう
・間違えて「公開」してしまったとき、パブリサイズ共有で複数のSNSにシェアしていたため、削除するのが一苦労だった
・スラッグを付けて投稿しようと思っているのにし忘れて、日本語スラッグがついたURLになってしまった
・moreを付け忘れたため、とても長い文章がFacebookに投稿され、多くの人に迷惑をかけてしまった気がする
・カテゴリーはちゃんと付けて投稿しようと思っていたのに、デフォルトの未分類のままで投稿してしまった
などの数々の失敗があったためです(^_^;。
Warn when you post v1.1 のインストール方法
まずは、
このzipファイルをダウンロードします。
ダッシュボード プラグイン>新規追加 をクリック
プラグインのアップロード をクリック
ファイルを選択 をクリック
ダウンロードした warn-when-you-post.zip を選択して
今すぐインストール をクリック
プラグインを有効化 をクリック。これでインストールは完了です。
Warn when you post v1.1 の使い方
Warn when you post v1.1 をインストールしただけではまだ投稿や固定ページ作成時に警告することはありません。自分の使い勝手の良いように設定をしておきます。
ダッシュボード 設定>Warn when you post をクリック
このように、どのチェックをするかの指定画面が表示されます。
どんなことができるのか?を説明するためにすべてにチェックを付けて試してみたいと思います。
すべてにチェックを付けて、公開確認時の質問と答えも入力して 変更を保存 をクリック
投稿を試してみる
この状態で投稿を試してみます。
このようにタイトルと本文を書いただけで、下書きとして保存 をクリックしてみます。
すると、
このように、
スラッグが入っていません!
カテゴリーが未分類です。指定してください
more がありません!!!!!
と、メッセージが出るようになりました。
固定ページを試してみる
固定ページで、
タイトルと本文だけ入力して 下書きとして保存 をクリックします。
すると、
スラッグが入っていません!
more がありません!!!!!
と、メッセージが出るようになりました。
公開時の確認メッセージを見てみる
投稿もしくは固定ページの編集で
公開 をクリックします。すると、
このようにメッセージと入力ボックスが表示されます。
先ほど決めた答えを入力して OK をクリックすると、
公開状態になります。
もしここで、
答えを間違えると
答えが間違っています と表示されて、公開されません。
公開時の確認は答えなしにもできます
設定画面で、
このように答えを入力せずに 変更を保存 をクリックします。
すると、公開をクリックしたとき
このように OK をクリックするだけで公開できるようになります。
この辺は自分のおっちょこちょい具合に合わせて、設定されるといいと思います。私はすごくおっちょこちょいなので、答えを入れないと公開できないようにしておかないと OK もうっかり押してしまうので答えを入力できるようにしました(^_^;。
おまけ:v1.1で追加した仕様について
以前公開していたv1.0から以下の点を修正しました。
・公開時の確認で答えなし(ボタン押下のみ)が指定できるようにした
・設定画面に説明を追加
・アンインストール時にoptionテーブルからデータを削除
・答えの入力が間違っていたときにメッセージを出す
この中でも「アンインストール時にoptionテーブルからデータを削除」については、削除しないとデータがoptionテーブルに残ったままになるということに気づいていなくて、慌てて追加しました。
方法としては uninstall.php というファイルを作って、
<?php if (! defined('WP_UNINSTALL_PLUGIN')) { exit; } delete_option('wwyp_confirm_a'); delete_option('wwyp_confirm_q'); delete_option('wwyp_publish_page'); delete_option('wwyp_publish_post'); delete_option('wwyp_more_page'); delete_option('wwyp_more_post'); delete_option('wwyp_category1_post'); delete_option('wwyp_slug_page'); delete_option('wwyp_slug_post');
こんな感じのコードを書いたのですが、この delete_option がやたらと多くて、json形式か何かで保存すれば1行ですんだのになぁと公開しました。
次回、バージョン1.2を公開するようなことがあれば、optionテーブルへの保存ももう一工夫したいと思っています(^_^;
コメント