Monthly Archives: November 2011

WordPress 3.3のHTMLエディターにクイックタグを追加する

この記事は、「WordPress 3.3 ベータ 3」に基づいて書かれており、不確定な要素を含んでいる。 WordPressは、記事の作成、編集のために「ビジュアルエディター」と「HTMLエディター」の2つのエディターを備えており、操作を簡略化するために、それぞれ独自のボタンを配している。 「ビジュアルエディター」で表示されるボタンは、ビジュアルエディターのベースとなってるライブラリ、「TinyMCE」が標準で搭載してるボタンか、「TinyMCE」のプラグインとして導入されているものである。 また、「HTMLエディター」に表示されるボタンは「クイックタグ(Quicktag)」と呼ばれ、「ビジュアルエディター」のボタンとは異なるものである。 (現時点では、未だリリースされていないが)「WordPress 3.3」では、この「クイックタグ」の処理が変更されており、従来方法ではクイックタグを「HTMLエディター」に追加出来なくなってしまっている。 そのため、独自のクイックタグを追加するようなプラグインは、WordPress 3.3に合わせて修正しない限り、WordPress 3.3では、クイックタグが表示されないと言った問題が発生することが予想される。 この記事では、WordPress 3.3のHTMLエディターに独自のクイックタグを追加する方法を説明する。 下記は、<pre>タグ(および終了タグ</pre>)を入力するためのクイックタグを追加する場合の例である。 プラグインやfunctions.phpで記述すれば良い。 <?php function add_my_quicktag() { ?> <script type=”text/javascript”> //QTags.addButton(‘ID’, ‘ボタンのラベル’, ‘開始タグ’, ‘終了タグ’); QTags.addButton(‘ed_pretag’, ‘pre’, ‘<pre>’, ‘</pre>’); </script> <?php } add_action(‘admin_print_footer_scripts’, ‘add_my_quicktag’); ?> 「ID」は任意のもの、「ボタンのラベル」には、ボタン上に表示したい文字を設定する。 「開始タグ」には、ボタンをクリックした時に、選択範囲の前に挿入されるタグを入力する。 「終了タグ」は、不要であれば省略することも出来る。 その他に、タイトル(title属性)、アクセスキー、プライオリティと言ったパラメーターを指定することも出来る。 詳しくは、 /wp-includes/js/quicktags.dev.js のコメントを参照のこと。 上記の例は、単にタグを挿入するだけの処理であるが、より高度な処理を行うために、指定したJavaスクリプトの関数を実行させることもでき、この場合も、シンプルに記述することが出来る。 <?php function add_my_quicktag() { ?> <script type=”text/javascript”> //QTags.addButton(‘ID’, ‘ボタンのラベル’, 関数名); QTags.addButton(‘ed_saywordpress’, ‘Say WordPress’, say_wordpress); function say_wordpress() { alert(‘WordPress’); } </script> <?php } add_action(‘admin_print_footer_scripts’, ‘add_my_quicktag’); ?> 「関数名」は、クォーテーションで囲んではいけない。 また、「WordPress 3.3」では、「quicktags_settings」と言うフィルターフックが新しく追加されており、このフックを使えば、デフォルトで表示させるクイックタグを制御することが出来る。 標準では、デフォルトで表示されるクイックタグは、strong(b)、em(i)、link、block(b-quote)、del、ins、img、ul、ol、li、code、more、spell(lookup)、close(close tags)、fullscreenであるが、下記のように記述することで、これを変更することが出来る。 function default_quicktags($qtInit) { $qtInit['buttons'] = ‘strong,em,link’; return $qtInit; } add_filter(‘quicktags_settings’, ‘default_quicktags’, 10, 1); 上記の例では、strong(b)、em(i)、linkがデフォルトで表示されるクイックタグとなる。 なお、デフォルトのクリックタグの指定は、最初に説明した方法で追加したクイックタグには影響を与えないので、デフォルトのボタンとして指定しなくとも表示される。 詳しくは、 /wp-includes/class-wp-editor.php のeditor_settings()関数を参照のこと。

Posted in PHP, WordPress, ネット・PC | Tagged , | 2 Comments

初心者による初心者のためのPHP講座 第5回 演算子

PHPに限らず、プログラムでは、「演算子」と呼ばれる数学的または論理的な演算を行うための記号を使用する事が多い。 この演算子を使えば、足し算、引き算などの四則演算を行ったり、値の代入を行うことが出来る。 また、PHPのプログラムでは、ある条件を満たすか否かの判定、つまりは真偽(true、false)の判定を行うことが多いが、このような判定では「比較演算子」、「論理演算子」が欠かせない。 既に「初心者による初心者のためのPHP講座 第3回 文字列」で「文字列演算子」について触れ、「初心者による初心者のためのPHP講座 第4回 定数と変数」で「代入演算子」と「算術演算子」についても触れており、実際に使用しているが、それら以外にも演算子には様々な種類がある。 とは言え、復習的な部分も少なくない。 演算子は、必ず知っておく必要があるが、演算子だけ取り上げて学習するよりも、プログラムの中で実際に使った方が感覚的にも分かりやすいかもしれない。 具体的な使い方は、実際にプログラミングしながら覚えれば良い。 しかし、演算を行うための演算子という記述があることは、少なくとも覚えておこう。 算術演算子 単純な計算を行うための記述にであり、「5+3」、「2×3」の「+」や「×」に相当するもので、プログラミングの知識が無くとも、馴染みがあり、理解しやすいはずである。 PHPでは、以下の5つの四則演算子が用意されている。 + 足し算 – 引き算 * 掛け算 / 割り算 % 割り算の余りを求める 下記は、算術演算子を使ったサンプルである。 <!doctype html> <?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?> <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml” lang=”ja” xml:lang=”ja”> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ /> <title>四則演算子</title> </head> <body> <?php $cal1 = 8 + 3; // 8と3の足し算。$cal1には整数11が代入される。 $cal2 = 8 – 3; // 8から3を引く。$cal2には整数5が代入される。 $cal3 = 8 * 3; // 8に3を掛ける。$cal3には整数24が代入される。 $cal4 = 8 / 3; // 8を3で割る。$cal4には浮動小数点2.66666666667が代入される。 $cal5 = 8 % 3; // 8割る3の余り。$cal3には整数2が代入される。 echo “8 + 3 = “.$cal1.”<br />”; echo “8 - 3 = “.$cal2.”<br />”; echo “8 × 3 = “.$cal3.”<br />”; echo “8 … 続きを読む →

Posted in PHP, PHP講座, ネット・PC | Tagged | Leave a comment

WordPressにソーシャルボタンを追加する「Facebook, Twitter & Google+ Social Widgets」

WordPressにソーシャルボタンを追加するプラグインは、数多くあるが、今回紹介する「Facebook, Twitter & Google+ Social Widgets」もその1つである。 このプラグインは、どちらかと言えば後発で、機能も非常にシンプルであるが、既にかなりの人気を獲得している。 「Facebook, Twitter & Google+ Social Widgets」で追加できるボタンは、「Facebook いいね!」、「ツイート」、「Google+」の3つに限られており、この3つのボタンのうち、選択したものを単に横並びに記事に表示するだけである。 しかし、この3つのボタンは、世界中で人気のサービスであり、ある意味、的を得た選択と言える。 「Facebook, Twitter & Google+ Social Widgets」は、単に有効化するだけでも使えるが、表示に関して細かな設定でき、このあたりも人気の秘密だろう。 まず、ボタンの順序を自由に入れ替えることが出来る。 また、ボタンを表示するページを次から複数選択することが出来る。 投稿 固定ページ ホーム カテゴリーページ タグページ タクソノミーページ 日付別ページ 作成者ページ 検索結果 添付ファイルページ 加えて、ページ内でのボタンの表示位置が指定でき、「投稿の上」、「投稿の下」、または「両方」に表示させることが出来る。 なお、このプラグインの作者は、以前、「WP SyntaxHighlighter」用にとDOSバッチファイル用のBrushファイルを作成してくれた方である。 参考:SyntaxHighlighter用のBrushファイル「DOS バッチファイル」

Posted in WordPress, ネット・PC | Tagged , | Leave a comment

TinyMCE Backslash Button バージョン0.2 リリース

「TinyMCE Backslash Button バージョン0.2」をリリースした。 最新の「TinyMCE Backslash Button」をダウンロードする バージョン0.2では、HTMLエディター上でもフォントの指定付きでバックスラッシュを入力出来るQuicKtagを追加した。 これによって、ビジュアルエディター、HTMLエディターの両方でバックスラッシュの入力が可能になった。

Posted in WordPress, ネット・PC, 自作アプリ | Tagged , , | Leave a comment

WP SyntaxHighlighter バージョン1.6 リリース

「WP SyntaxHighlighter バージョン1.6」をリリースした。 最新の「WP SyntaxHighlighter」をダウンロード 「WP SyntaxHighlighter」は、基本的に標準のビジュアルエディターの使用を想定したものであり、HTMLエディターを主に利用しているユーザーにとっては使い易いとは言えなかった。 バージョン1.6では、ソースコードをエースケープし、<pre>でマークアップして強調表示の対象とできるQuicktag(ボタン)「SH pre」をHTMLエディターに追加した。 これにより、HTMLエディターでのソースコード記述が大幅に楽になっている。 「SH pre」ボタンの基本的な操作は、TinyMCEの「pre」ボタンを同じである。 ただし、タグの編集が出来るHTMLエディターのボタンであることもあり、「pre」ボタンと異なり、設定値の変更機能は備えていない。 また、一度「SH pre」ボタンで処理したソースコードは、特殊な文字がエスケープされて表示されるため、見かけ上、元々のソースコードとは、異なった表示となってしまう。

Posted in WordPress, ネット・PC, 自作アプリ | Tagged , , | Leave a comment

初心者による初心者のためのPHP講座 第4回 定数と変数

多くのプログラミング言語同様に、PHPでも、定数、変数を使うことが出来る。 定数、変数とは、「初心者による初心者のためのPHP講座 第3回 文字列」で学んだ文字列などの値を格納しておく箱のようなもので、命令文の中などで箱から値を取り出して使うことが出来る。 定数 定数とは変わることない不変の値、不変の値を格納する箱を指し、define()関数を使って以下のように定義する。 define(“定数名”, 値); 定数名には、アルファベット、数字、アンダースコアを使うことが出来るが、最初の1文字はアルファベットかアンダースコアである必要がある。 また、特別な引数を設定しない限り、アルファベットの大文字と小文字は区別され、別のものとして扱われる。 定義した定数に格納された値は、定数名で取り出すことが出来る。 難しいことを考えるよりも、実際にサンプルを見たほうが理解が早いだろう。 以下のサンプルでは、echo()関数と組み合わせて定数を使用している。 <!doctype html> <?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?> <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml” lang=”ja” xml:lang=”ja”> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ /> <title>定数</title> </head> <body> <?php define(“VALUE1″, 100); define(“VALUE2″, “100″); define(“VALUE3″, “こんにちは”); echo VALUE1.”<br />”; echo VALUE2.”<br />”; echo VALUE3.”<br />”; echo VALUE1.”円”.”<br />”; echo VALUE3.”。 この商品は”.VALUE1.”円です。”; ?> </body> </html> 上記のスクリプトの実行結果を表示 定数に文字列を格納する場合は、前回学んだ通り「”」や「’」で囲む必要がある。 数値を格納する場合は、「”」や「’」で囲む必要はないが、文字列として数字を扱う場合は、「”」や「’」で囲む必要がある。 例えば「”1″」と「1」は、それぞれ文字列と数値であり、プログラミング上では、本来は別物であり、区別されるべきものだが、PHPでも区別はあるものの、その区別が曖昧である。 この事は、変数の説明の際に再度述べる。 定数は、何度でも呼び出して使用することができ、一度、定数を定義してしまえば、後は定数として呼び出すだけで良いので、都度、値を記述するより遥かに楽であるし、ミスも起こりにくくなる。 実際、上記のサンプルでも定数「VALUE1」、「VALUE3」は、2度以上使われている。 文字列の連結同様に「.」を使って、定数や文字列と連結することも出来る。 定数は、不変の値を考えるよりも、一度定義したら変更が効かない値と考えたほうが分かりやすいかもしれない。 つまり、箱の中身を取り出すことは出来ても、入れ替えることは出来ない。 定義した後で値を変更する必要がなく、繰り返し使う可能性がある値は、定数として定義すると良いだろう。 変数 変数とは、変化する可能性がある値を格納する箱のようなものである。 定数が、一度定義したら値の変更が出来ないのに対して、変数は、何度でも値を変更することが許されている。 つまり、箱の中身を自由に入れ替えることが出来る。 変数の定義は、定数と異なり関数を使う必要がなく、非常にシンプルである。 $変数名; $変数名 = 値; 「$」が変数であることを表し、空の変数を定義するなら単に「$変数名」と宣言すれば良いし、何かしらの値を代入した変数を定義するなら「代入演算子」である「=」を使って値を代入した形で変数を定義すれば良い。 値の代入の有無は別として、この要領で変数を宣言をした時点で変数は初期化され、値が格納される。(値を代入していない場合は、空の値が格納される。) このあたりは、数学の代入と要領は同じである。 変数名には、アルファベット、数字、アンダースコアを使うことが出来るが、最初の1文字はアルファベットかアンダースコアである必要がある。 また、アルファベットの大文字と小文字は区別され、別のものとして扱われる。 「$$value」のように変数名に変数を使う使うことも出来るが、ここでは説明を省く。 では実際にサンプルを見てみよう。 <!doctype html> <?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?> <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml” … 続きを読む →

Posted in PHP, PHP講座, ネット・PC | Tagged | 1 Comment