| 最新の投稿-WordPress |
- 2004-6-20
- 2004-4-25
- 2004-4-22
- 2004-4-18
|
| 最新の投稿-雑記 |
- 2004-5-20
- 2004-3-24
- 2004-2-23
- 2004-2-21
|

Powered by XOOPS Cube Legacy 2.1.8
PukiWikiMod 1.5.1
WordPress Module 0.6.0 Alpha
|
|
| Wordpressカレンダーで曜日ヘッダ文字化け?
投稿者:
viva
投稿日:2005/03/23(Wed) 08:17
No.1331 |
|
|
 |
はじめまして。vivaといいます。
最近xoopsに興味を持ち始め、ローカルマシンに入れて お勉強がてら遊んでます。 ※OS =WindowsXP(Pro) ※自分で勝手にインストール =Apache2.0.53 +PHP4.3.10 +MySQL3.23.42 +Xoops2.0.9.2(-ja-euc) +WordpressME Xoops Module 0.3.3
モジュールを色々インストールしていたところ、 Wordpressカレンダーで曜日タイトルが文字化けするんです。
もう少し具体的にいうと、曜日タイトルが ===vivaこっから========================================== <th abbr='日曜日' scope='col' title='日曜日'>銅/th> <th abbr='月曜日' scope='col' title='月曜日'>啓/th> <th abbr='火曜日' scope='col' title='火曜日'>下/th> <th abbr='水曜日' scope='col' title='水曜日'>深/th> <th abbr='木曜日' scope='col' title='木曜日'>娘/th> <th abbr='金曜日' scope='col' title='金曜日'>脅/th> <th abbr='土曜日' scope='col' title='土曜日'>甜/th> ===vivaここまで========================================== となっています。
ソースを見てみたら、wordpress/wp-includes/template-functions-general.phpの get_calendar関数(?)内で ===vivaこっから========================================== foreach ($weekday as $wd) { if (function_exists('mb_substr')) { echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . mb_substr($wd, 0, $daylength,$blog_charset) . '</th>'; } else { echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . substr($wd, 0, $daylength) . '</th>'; } } ===vivaここまで========================================== の部分があったので、これを、自己責任で、お好きに、勝手に、 ===vivaこっから========================================== foreach ($weekday as $wd) { if (function_exists('mb_substr')) { echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . mb_substr($wd, 0, $daylength,$blog_charset) . '</th>'; } else { $daylength = 2; echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . substr($wd, 0, $daylength) . '</th>'; } } ===vivaここまで========================================== と、無理矢理$daylengthを2にするよう修正することで、 ===vivaこっから========================================== <th abbr='日曜日' scope='col' title='日曜日'>日</th> <th abbr='月曜日' scope='col' title='月曜日'>月</th> <th abbr='火曜日' scope='col' title='火曜日'>火</th> <th abbr='水曜日' scope='col' title='水曜日'>水</th> <th abbr='木曜日' scope='col' title='木曜日'>木</th> <th abbr='金曜日' scope='col' title='金曜日'>金</th> <th abbr='土曜日' scope='col' title='土曜日'>土</th> ===vivaここまで========================================== となるところまで確認できました。
・・・ここで、初心者質問をさせてください。(^^; ===本題質問:こっから========================================== (1)私の環境でfunction_exists('mb_substr')がfalseを返しているのが 本件の直接の原因と推測されるんですが、falseが返ってきた原因として どういうことが考えられるのでしょうか? (※何か、私、設定シクってるんでしょうか?・・・・汗)
(2)$daylengthを動的に(?)変更できるような設定って、 どっかのオプションで設定できるんですか? (※smarty_get_calendaerだったか何かで既に$daylength=1って・・。 かつwordpress/wp-includes/template-functions-general.phpの get_calendar($daylength=1)って・・。 で、同関数内でその値をそのまま使ってる・・。 grepしてもそれ以外に見つからない・・・?)
関係ありませんが、私にとっての重要度は ◇上記質問(1)=「超重要!」 ◇上記質問(2)=「ま、いっか・・」 です。(^^; ===本題質問:ここまで==========================================
ご多忙のところ恐れ入りますが、ご回答のほど、 どうか宜しくお願いします。 |
|
Re: Wordpressカレンダーで曜日ヘッダ文字化け?
投稿者:
のぶのぶ
投稿日:2005/03/23(Wed) 22:56
No.1333 |
|
|
|
 |
引用: (1)私の環境でfunction_exists('mb_substr')がfalseを返しているのが 本件の直接の原因と推測されるんですが、falseが返ってきた原因として どういうことが考えられるのでしょうか? (※何か、私、設定シクってるんでしょうか?・・・・汗)
phpにmbstringエクステンションがロードされていないのでは無いでしょうか? phpinfo(); で確認願います。 Windows環境の場合には、元々のc:\windows\php.ini内の
;extension=php_mbstring.dll
extension=php_mbstring.dll
というようにコメントをはずす必要があります。 引用: (2)$daylengthを動的に(?)変更できるような設定って、 どっかのオプションで設定できるんですか? (※smarty_get_calendaerだったか何かで既に$daylength=1って・・。 かつwordpress/wp-includes/template-functions-general.phpの get_calendar($daylength=1)って・・。 で、同関数内でその値をそのまま使ってる・・。 grepしてもそれ以外に見つからない・・・?)
これに関しては、元々は言語依存(日本語なら1文字、英語なら2文字)なので、 language/japanes/main.php内に、
define("_WP_CAL_SWEEK_LEN", 1);
と定義してあるのを参照するようにしています。 が・・・この様な不具合やカレンダーを英語表示したい方々のために、 themes/xxxxx/wp-config-custom.php内にて
$GLOBALS['s_weekday_length'] = 3; //曜日を省略形で表示するときの文字数 "Sunday"は"Sun"になる。"日曜日"を"日"にする場合は1を指定。
を変更してコメントアウトをはずしてやれば、良いようにしてあります。 コメントが前後の10行くらいにまとめてかかっているので。 この行だけをコピーして、コメントの外に出してやるのが確実だと思います。
お試しあれ! |
|
Re[2]: Wordpressカレンダーで曜日ヘッダ文字化け?
投稿者:
viva
投稿日:2005/03/24(Thu) 15:07
No.1336 |
|
|
|
 |
のぶのぶさん、ありがとうございますっ! で、で、で、出来ました〜\(ToT)/
引用: のぶのぶさんは書きました: 引用: (1)私の環境でfunction_exists('mb_substr')がfalseを返しているのが 本件の直接の原因と推測されるんですが、falseが返ってきた原因として どういうことが考えられるのでしょうか? (※何か、私、設定シクってるんでしょうか?・・・・汗)
phpにmbstringエクステンションがロードされていないのでは無いでしょうか? phpinfo(); で確認願います。 Windows環境の場合には、元々のc:\windows\php.ini内の
;extension=php_mbstring.dll
extension=php_mbstring.dll
というようにコメントをはずす必要があります。 引用: (2)$daylengthを動的に(?)変更できるような設定って、 どっかのオプションで設定できるんですか? (※smarty_get_calendaerだったか何かで既に$daylength=1って・・。 かつwordpress/wp-includes/template-functions-general.phpの get_calendar($daylength=1)って・・。 で、同関数内でその値をそのまま使ってる・・。 grepしてもそれ以外に見つからない・・・?)
これに関しては、元々は言語依存(日本語なら1文字、英語なら2文字)なので、 language/japanes/main.php内に、
define("_WP_CAL_SWEEK_LEN", 1);
と定義してあるのを参照するようにしています。 が・・・この様な不具合やカレンダーを英語表示したい方々のために、 themes/xxxxx/wp-config-custom.php内にて
$GLOBALS['s_weekday_length'] = 3; //曜日を省略形で表示するときの文字数 "Sunday"は"Sun"になる。"日曜日"を"日"にする場合は1を指定。
を変更してコメントアウトをはずしてやれば、良いようにしてあります。 コメントが前後の10行くらいにまとめてかかっているので。 この行だけをコピーして、コメントの外に出してやるのが確実だと思います。
お試しあれ!
|
|
このプログラムは KENT 氏の yybbs を xoops(PHP) に移植したものです
- KENT -
|