SQLite で動かせる PDO (SQLite) For Wordpress を参考にしていますが、
new PDO 等の文字列を単に new Posql といった感じに変換していくだけでも
ある程度は動くようになります(エラー制御が必要)。
WordPress の バージョンは 2.9.2 です。
そして、はまったところは
- wordpress/wp-includes/general-template.php
$query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts FROM $wpdb->posts $join $where GROUP BY YEAR(post_date), MONTH(post_date) ORDER BY post_date DESC $limit";
v2.9.2 現在の 806 行目のこの SQL。
GROUP BY に複数のフィールド。
さらにそれが評価式。
Posql 2.15 では、GROUP BY 句に単一のカラム名しかサポートしていません。
サブクエリでごにょごにょやろうとも思いましたが、
今後のためにも 複数可能な評価式をサポートすることにしました。
ちなみにこの SQL で表示する部分は「アーカイブ」です。
- 2010 (2)
- 2009 (12)
実装メモ:
複数の順序がある GROUP BY アルゴリズムは、
グループ化カラムによって順序付けされた入力を読み込みます(IN)。
各列は、読み込むたび(LOOP) 前の列と比較します。
グループ化カラムが一致すると、現在のグループを更新します。
それ以外の場合は、現在のグループを出力し 新しいグループを開始します。
つまり、コントロールブレイク処理。
ある程度まとまったら 次バージョンをリリースする予定です。
「WordPress for Posql」できたらいいなぁ

0 コメント:
コメントを投稿