User:
Pass:
Keep:   
Xoops Cube Project
XOOPS Cube Project Site
Powered by Google


Powered by XOOPS Cube Legacy 2.1.8
PukiWikiMod 1.5.1
WordPress Module 0.6.0 Alpha
ubicast投稿のタイムスタンプが9時間前になります 投稿者: kak 投稿日:2005/10/05(Wed) 12:05 No.2093  
はじめまして。
wordpressというすばらしいモジュールを提供していただきありがとうございます。
まだ公開前のサイトですがwordpressを利用させていただこうと取り組んでいるところです。
そこで、色々な投稿方法で投稿の練習をしているのですが、ubicastを利用した場合にタイムスタンプが実際の投稿時間より9時間前になってしまい、自分では解決できないでいます。

xoopsの一般設定のタイムゾーン、管理者のタイムゾーン、投稿者のタイムゾーンは東京に設定してあり、wordpressのtime_differenceは0にしています。
ubicastの設定は、投稿時間を指定する設定でも指定しない設定でも同様に9時間ずれてしまいます。

どこの設定を見直せばよいかヒントをいただけないでしょうか?


Re: ubicast投稿のタイムスタンプが9時間前になります 投稿者: のぶのぶ 投稿日:2005/10/07(Fri) 13:50 No.2100  

これは、設定のせいでは無くて、xmlrpc側で日付文字列判定のバグのようです。
modules/wordpress/xmlrpc.php 中に、

$dateCreated = iso8601_decode($contentstruct['dateCreated']);

という行が、2箇所ありますが、この部分を、

$dateCreated = preg_split('/([+\-Z])/',$contentstruct['dateCreated'],-1,PREG_SPLIT_DELIM_CAPTURE);
if(count($dateCreated) == 3) {
    $dateCreated[2] = str_replace(':','',$dateCreated[2]);
}
if ($dateCreated[1] == '+') {
    $dateoffset = intval($dateCreated[2])*36;
} else if ($dateCreated[1] == '-') {
    $dateoffset = -intval($dateCreated[2])*36;
} else {
    $dateoffset = 0;
}
$dateCreated = iso8601_decode($dateCreated[0],1)- $dateoffset + (get_settings('time_difference') * 3600);

に置き換えて頂けませんでしょうか。
本来は、iso8601_decodeの定義自体を直すのが正しいと思うのですが、こちらは汎用のクラスライブラリがベースとなっているため、とりあえずWP固有部分での修正にて対応しています。


Re[2]: ubicast投稿のタイムスタンプが9時間前になります 投稿者: kak 投稿日:2005/10/11(Tue) 01:13 No.2111  

のぶのぶさま、お忙しいなか、ありがとうございました。
お教えいただいた書き換えをしたところ、正しい投稿時間で登録されるようになりました。
ありがとうございました。


NO: PASS:

このプログラムは KENT 氏の yybbs を xoops(PHP) に移植したものです
- KENT -