「WEB」カテゴリーアーカイブ

webに関する記事をまとめています。phpやwordpressが主。htmlやcssもやってます。

wordpress – query posts – orderby – 記事の検索条件

テンプレートタグ/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に入っているものを順番に抜き出す、という意味なのだろうか。

php – safe_getEncoding($str, ‘hoge’) – 文字列のエンコーディングを調べる

PHP 文字コードの取得 | HAPPY*TRAP

上記サイト様より引用コード。

上記サイト様も引用による紹介だったが、本元が繋がらなくなっているようなので。

スニペット

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));

.

phpGD – linebox($x1, $y1, $x2, $y2, $col) – 二点にまたがるアタリ決めのボックス

スニペット

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の大きさの正方形を描写する形となる。

php – vdt($test) – デバック用関数

スニペット

/**
 * デバック用関数
 * @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");

第二因子に文字列を入れるとファイル名が文字列+日付時刻となる。変数に代入も可能。

php – starttime() stoptime($time) – ストップウォッチ

スニペット

/**
 * タイム計測開始
 */
function starttime() {
  return microtime(true);
}
/**
 * タイム計測終了
 */
function stoptime($time) {
  echo microtime(true) - $time;
  return;
}

マイクロタイムによる時間を記録し、差によって時間を計測する。

変数を変えれば複数箇所の計測が可能。

デモ

$time = starttime();
//実行コード
stoptime($time);

クリップボードを監視して自動ダウンロード。今更ながら「DCサクラ」に惚れ直す

DCさくら – ダウンロードマネージャー(ダウンロード支援ソフト)

まあ「今更」というのは失礼だとは思いますが。ダウンロードツールとしては定番中の定番。だからこそブラウザで動画やzipをダウンロードする事が多い人とかじゃないと利用しないかなあ、って思ってたんですよ。

ですがまあ、これがもう便利すぎて鼻血でるわけです。

続きを読む クリップボードを監視して自動ダウンロード。今更ながら「DCサクラ」に惚れ直す

簡単に素敵なキャプチャーを設置できるphpライブラリSecurimageの設置方法

自作フォームを作る必要があったのですが、wordpressプラグインで利用するにはちょっと痒いところに手が届かないところが多く・・・手ごろなものを探していました。

続きを読む 簡単に素敵なキャプチャーを設置できるphpライブラリSecurimageの設置方法

PHPのdate()の出力で「Y2010」や「M04」のようなフォーマットにする方法

なんか上手い言葉が見つからない。

date()ではYmdとフォーマットを指定してやることで今日の日付が取得できる。20130206といったように。

で、例えば「Y2013 M02」と指定しようとすると「YYMm」と指定することになる。どうしたもんか、と思ったら普通にエスケープすればいいだけだった。とほほ。

YYMmといった具合に。

頭が凝り固まって煮こごりになっていたみたい★