- 2009-06-17 (水) 23:53
- CUSTOMIZED | WordPress
/wp-content/pdo/db.php
直後に
if( strtolower(mb_substr(str_replace(" ","",$query),0,6)) == "select" )
{
if( stristr($query, 'where') )
{
$arr_query[0] = preg_replace("/(SELECT .* FROM .* WHERE) (.*)/i", "$1" , $query);
$arr_query[1] = preg_replace("/(SELECT .* FROM .* WHERE) (.*)/i", "$2" , $query);
$explode = 1;
if($arr_query[0] == $arr_query[1])
{
$explode = 0;
}
$arr_query[1] = preg_replace("/YEAR\(wp_posts\.post_date\)=([0-9]*[0-9])/i", "strftime('%Y',wp_posts.post_date)='$1'" , $arr_query[1]);
$arr_query[1] = preg_replace("/DAYOFMONTH\(wp_posts\.post_date\)=([0-9]*[0-9])/i", "strftime('%d',wp_posts.post_date)='$1'" , $arr_query[1]);
$arr_query[1] = preg_replace("/MONTH\(wp_posts\.post_date\)=([0-9]*[0-9])/i", "strftime('%m',wp_posts.post_date)='$1'" , $arr_query[1]);
if($explode == 1)
{
$query = $arr_query[0]." ".$arr_query[1];
}else
{
$query = $arr_query[1];
}
}
}
※現状『YEAR(wp_posts.post_date)=2009』とか書いたとき修正されない様子…
ページ送り『SELECT FOUND_ROWS()』対応とセットで修正が必要
まだ完全ではないし他にもカラム追加系とか
SQLiteはデータ型もたなくて、自動noが1個しか使えないみたい?とかで
色々修正が必要になる様子。
更新@2010.01.02 00:06
関連する投稿
- Newer: apostropheとquotation
- Older: cronの指定方法
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://qooga.jb-jk.net/wp/2009/06/getpost_for_date/trackback/
- Listed below are links to weblogs that reference
- http://qooga.jb-jk.net/wp[wp×SQLite]日付から記事取得 from MOT:主にプログラム勉強メモ部屋