aoringo ICON writer
背景色に「#000001」を設定すると、
こんな感じで背景色が透明な画像が作成できるようになりました。
$color = preg_replace("/^#/", '', "#000000"); $out = array(); for ($i = 0; $i < 6; $i+=2) { $hex = substr($color, $i, 2); $out[] = hexdec($hex); }
出力すると$out[0],$out[1],$out[2]それぞれにRGB数値が入力される。
テンプレートタグ/query posts – WordPress Codex 日本語版
'none' - 順番指定なし(バージョン 2.8 以降のみ) 'ID' - ポストID 'author' - 投稿者名 'title' - 記事タイトル 'date' - 投稿日時 'modified' - 記事の更新日付 'parent' - 親順に並べる。記事、ページに親関係が設定されていた場合、その親IDが基準となる。 'rand' - ランダム 'comment_count' - コメント数で並べ替え 'menu_order' - おそらく固定ページ作成の時に利用する「順列」を基準にするのだと思われる。 //↓利用する場合はカスタムフィールドによる検索条件を事前に組む必要がある↓ 'meta_value' - カスタムフィールド内の値 'meta_value_num' - カスタムフィールド内の値を数字として認識
頻繁に使う割りに毎回調べている気がするのでまとめる。
「none」の利用方法がよくわからないが、mysqlに入っているものを順番に抜き出す、という意味なのだろうか。
上記サイト様より引用コード。
上記サイト様も引用による紹介だったが、本元が繋がらなくなっているようなので。
function safe_getEncoding($str, $default='auto') { foreach (array('EUC-JP', 'SJIS', 'UTF-8') as $charset) { if ($str == mb_convert_encoding($str, $charset, $charset)) { return $charset; } } return $default; }
「mb_convert_encoding」の挙動は本当に困りもので、最初の文字が1バイト文字、アルファベットとかだと「auto」で変換してもアスキー文字として判断されるらしい。
なのでこのコードは全てに対して一度全てのエンコーディングで変換をかけて文字列のエンコーディングを返す、というなんとも漢気のあるものになっている。
mb_convert_encoding($text, 'UTF-8', safe_getEncoding($text));
.
function linebox($x1, $y1, $x2, $y2, $col) { global $image; imagesetthickness($image, 1); imageline($image, $x1, $y1, $x2, $y2, $col); imageline($image, $x2, $y1, $x1, $y2, $col); imageline($image, $x1, $y1, $x1, $y2, $col); imageline($image, $x2, $y1, $x2, $y2, $col); imageline($image, $x1, $y1, $x2, $y1, $col); imageline($image, $x1, $y2, $x2, $y2, $col); }
二点の座標と色の指定をすることにより四角に×を入れた線画を描写する。
GDによる描写位置を探るのに便利
linebox($x=5,$y=5,$x+20,$y+20,$yellow);
この例では座標5から20の大きさの正方形を描写する形となる。
/** * デバック用関数 * @param $test * @param string $name * @return string */ function vbt($test, $name = "") { $testprint = print_r($test, true); ob_start(); var_dump($test); $testbump = ob_get_contents(); ob_end_clean(); $text = <<<"EOD" BUMP $testbump *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- print $testprint end*end*end*end*end*end*end*end*end*end*end*end*end*end*end* EOD; $name .= date("YmdHis"); file_put_contents(dirname(__FILE__) . "/debug/{$name}.txt", $text, FILE_APPEND | LOCK_EX); return $text; }
テーマファイルと同じ位置にあるdebug用ディレクトリにtxt形式で配列の内容を保存する。
特定変数の移り変わりを観測するのにも便利。
$dtext = vbt($_POST,"text");
第二因子に文字列を入れるとファイル名が文字列+日付時刻となる。変数に代入も可能。
/** * タイム計測開始 */ function starttime() { return microtime(true); } /** * タイム計測終了 */ function stoptime($time) { echo microtime(true) - $time; return; }
マイクロタイムによる時間を記録し、差によって時間を計測する。
変数を変えれば複数箇所の計測が可能。
$time = starttime(); //実行コード stoptime($time);
一連の記事→wordpressテーマをカスタマイズしよう Archives – aoringo works
プロデューサー! ウィジェットですよウィジェット!! のヮの
ウィジェットはとても大事です。サイドバーを彩ります。しかし自分で作るには少しハードルが高い。テヘペロ。
いちいちオプションとかくっつけたりして、なんか意味不明なコードが沢山あって。いやん、ばかん。
だからテンプレートとして簡単な即席ウィジェットを一つ持っておくと便利ですよ。
続きを読む 驚くほどシンプルでイカしたwordpressテーマ「wsc7」をカスタマイズしよう – その9 – 即席ウィジェットを作る
一連の記事→wordpressテーマをカスタマイズしよう Archives – aoringo works
前回でキャッシュを利用する仕組みに変更しました。一ヶ月間そのキャッシュを使い回します。
問題もあります。このままでは記事を投稿しても一ヶ月ページが変わらないんです。アッチョンブリケ
続きを読む 驚くほどシンプルでイカしたwordpressテーマ「wsc7」をカスタマイズしよう – その8 – キャッシュをクリアする
一連の記事→wordpressテーマをカスタマイズしよう Archives – aoringo works
ワードプレスではあらゆる場所でphp関数が走ります。例えば一週間に一記事投稿するとしても、人が来る度に毎回「記事があるかどうか走査→新着分5件を表示」という動作をします。
勿体なくないですか? 検索ページなどは毎回単語が変わるのでその限りではありませんが、カテゴリ一覧、記事一覧、etc、etc、ちまたでは色々な高速ツール、プラグインを勧める記事がありますが、自身でも高速化の対策をしていく必要があります。
もしやもすると高速化プラグインには今回の記事の内容を行うモノもあるかもしれませんが、今回は自分で用意しますよ。
続きを読む 驚くほどシンプルでイカしたwordpressテーマ「wsc7」をカスタマイズしよう – その7 – キャッシュを利用する