Post snippetsもcode snippetsも、htmlやphpを登録する事で記事作成を効率化できるプラグインです。いろいろな違いがありますが、あなたはどちらを使いますか?
code snippetsはPost snippetsに近い働きをするプラグインです。私はこのcode snippetsを使用しているのですが、とある理由でcode snippetsを選択しました。この2つのプラグインの違いを見てみたいと思います。
最初はPost snippetsを使おうとしたのですが、うまく動作してくれなかったので代わりのプラグインとしてcode snippetsを使い始めました。
私の場合、複数のショートコードを作るのが目的で、直接functions.phpに書き込んでいっても良いのですが、code snippetsが便利なので愛用しています。
何より、phpの学びにもなりますから。
Post snippetsでhtml登録する使い方
さて、本題ですが、Post snippetsはどのような使い方ができるのでしょう?
入力する欄は7つあります。
英語表示なので、突つきにくい感はありますが、始めに何かを登録する際、untitledと書かれた枠が表示されていると思います。
この文字の上にマウスを持ってくることで右側に鉛筆のアイコンが出現し、それをクリックする事で、何を登録したかがわかるよう名前をつけます。英語でも日本語でも大丈夫です。
そして、右端にある▼ボタンをクリックすることでコードを登録する枠がいくつか出現します。ここにいくつか必要事項を入力していくわけです…
untitledの下の大きな枠に実際に登録したいコードを入力します。
①仮に次のような、フォントを赤字にするhtmlを入力します。
②Descriptionには入力したコードが何をするためのものかを入力。
③右側のチェック欄は空白
④そしてsaveボタンで登録が完了します。
登録したコードは投稿画面のクイックタグに表示されるので、これをクリックすることでuntitleから変更した名前とDescriptionに入力した説明文が出てきます。そしてinsertボタンを押す事でエディターに挿入されるというカラクリです。
実は、htmlタグを登録する事でクイックタグから挿入できるのはできますが、この役割を最初は理解できませんでした。
エディターをテキストモードにしてhtmlタグを入力すれば、投稿ページでhtmlを使うことができます。ですが、いちいちhtmlを入力するのは面倒ですよね。なのでPost snippetsを利用し、htmlを入力する手間を省くのです。
先にタグを挿入し、タグの間に文章を書き込んでいくやり方です。
この視点でいくと、変数を使用してエディターに挿入する際に文章(単語)を書き込むということもできます。
このようなコードを入力し、Variables: にtextを入力します。(タイトルと説明文には適当なものを。)
すると、クイックタグで変数名が表示され、文章を入力する枠ができます。ここに文章や単語を入力し、エディターに挿入する。というやり方です。
枠が小さいので、短い単語を入力する場合に向いていますね。
では、code snippetsではどうすれば良いでしょう。
code snippetsでhtmlを登録
code snippetsだと、htmlコードを直接入力した場合、html入力用のサンプルがあり、このようなphpコードの中にhtmlを挟み込むことになります。
一部を日本語に直すと…
add_shortcode( 'ショートコード名', function () { $out = '<p>ここにあなたのhtmlショートコードを書き込みます。</p>'; return $out; } );
これはショートコードをつくるphpの型なので、投稿画面のエディター内では
[ショートコード名]と書き込み、phpコードに挟み込んだhtmlがサイトに表示されます。
つまり、この方法だとエディター内でhtmlタグだけを挿入することはできません。
code snippetsの場合、クイックタグに追加するコードを登録することになります。
これです。
このような型の中にID、登録名、開始タグ、終了タグを入力する手間がありますが、クイックタグにhtmlタグを登録でき、文章を装飾できるので、記事作成の作業効率がグッと上がります。
よく使うhtmlタグを登録する作業としては、Post snippetsのほうがカンタンです。記事作成の効率化につなげるのであれば、私的にはcode snippetsのほうが良いと思っています。
その理由については、こちらの記事で詳しく記載しているので参考にしてください。
次に、phpコードをショートコード化してみましょう。
phpをショートコード化する。
Post snippetsが有効活用できるのは、phpのショートコード化ではないかと思っています。
私の場合、固定ページのデータを別の固定ページに表示させるのに、phpでのデータのやりとりでショートコード化する必要があったためではありますが。
Post snippetsはある程度省略してコードを登録できますし、ショートコードとエディターに挿入するのも楽です。
実はプラグインを使わなくてもショートコードを作る事はできます。このコードをfunctions.phpに追記すればいいのですから。
function ファンクション名() { 処理する内容 } add_shortcode(‘ショートコード名’, 'ファンクション名');
ですが、やはりfunctions.phpに手を加えるのは抵抗感がありますよね。
Post snippetsはこの中の『処理する内容』だけを入力し、shortcodeとphpの欄にチェックを入れる事でphpコードをショートコード化できます。
あとは、投稿画面から、登録したときにつけた名前を選んで挿入するだけ。少し楽できるといったところでしょうか。
code snippetsだと、上記のコードをそのまま、記述する必要があります。
そして、ショートコード名を[]をつけて投稿画面で入力します。
入力する作業としてはちょっと面倒ですね。笑
phpのショートコード化こそ有効活用できると言っておきながら、code snippetsでのショートコード化はクイックタグには反映されないという違いがあるので、ここはPost snippetsに軍配が上がるようです。
code snippetsのみでクイックタグに表示させるるなら、もう一手間を加え、このコードの開始タグに[ショートコード名]をつけてクイックタグ登録のphpコードに追加すればOK。
QTags.addButton('ID&', 'ボタン', '[ショートコード名]', '');
Post snippetsはhtmlコードをそのままエディターに引き出せたり、ショートコード化をエディターに引き出せる機能があるのに対し、code snippetsはfunctions.phpに直接入力するかわりにプラグインを使う。という違いがあります。
使い方が異なるので、どちらを取るか、どちらとも使うかはサイトの使い方次第になります。
文法エラーの検出
code snippetsに登録したコードは、文法を間違ってしまったとき、エラーがでてきます。Post snippetsにはこの機能はありません。文法が間違っていたり、抜けがあったとしてもそのまま登録され、実際に表示するページでエラーとなってコメントがでてきます。
また、code snippetsだと、登録したコードのオン・オフ機能があるのもメリットです。
インポート・エクスポート機能
このインポート・エクスポート機能はどちらのプラグインにも備わっています。登録したコードをバックアップできるとテンプレートがアップデートしたときや、テーマそのものを変更するとき、バックアップしたデータをそのまま取り込むことができます。
登録した作業やデータが無駄になりませんね。
そうそう、WordPressで記事に画像(メディア)を追加するとき、カスタマイズしたcssを使いたいなら、クラス名だけをPost snippetsにショートコード化せずに登録しておくと、ボタンクリックだけでクラス名を挿入する。といった使い方もできます。
スポンサードリンク