| 投稿者 | メッセージ | ||||||||
|---|---|---|---|---|---|---|---|---|---|
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
配布用のスキンファイルを作っているのですが、 過去ログno.2014のkuriさんと同じ症状になってしまい困っています。 http://japan.nucleuscms.org/bb/viewtopic.php?t=2014 具体的には、Nucleusから書き出したskinbackup.xmlの項目の中で、日本語が含まれる箇所以降が読み込まれず、要素が空っぽになってしまいます(データベース上でも、nucleus_skinやnucleus_template内にはありませんでした)。なお、データのエクスポート自体は出来ていまして、日本語部分を削除したり、文字コードをUTF-8に変換した後管理画面から読み込みを行うと、日本語部分の文字化けはありますが、きちんと読み込みできます。
読み込みがうまく行かなかったのはEUC版のNucleus ver.3.22、3.23、3.24(upしてしまったので、3.23以前で再テストは出来ません…)、サーバーはすべてxreaです。データベースも作成時にEUCにしたと記憶しています。 1)s152サーバー(PHP:5.1.4、MySQL:4.0.26) 2)s212サーバー(PHP:5.1.4、MySQL:5.0.22) 念のため、フォーラムで配布されているスキンの読み込みもいくつか試してみましたが、 上の条件に該当するスキンパーツはすべて読み込めませんでした。 インストールしたままのNucleusでも試してみましたが、プラグインの影響でもないようです。 他にこのような症状が出たよという方、いらっしゃいますでしょうか? googleでもフォーラム検索でもkuriさん以外に見つからず、サーバー依存なのかなあとも考えています…。 他の方のスキン移植の手伝いのため、スキンパーツ部分やコアファイルに手を加えず、 プラグインも使わずに済む方法を模索しています。 もし環境に依存するようでしたら、その旨と対策を書き添えて配布したいと思います。 どなたか原因や対応策ご存知ありませんでしょうか?よろしくお願いいたします。 _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ 最終編集者 輝竜司 [ 2007.03.19 (月) 22:08 ], 編集回数 5 回 |
||||||||
|
|
|||||||||
|
shizuki モデレーター ![]() 登録日: 2006.03.23 記事: 891 所在地: 西播磨 |
本家のスキンライブラリのスキンでも、パーツの途中までしか読み込めてなかったり、あるいはスキンは読み込めるけどテンプレートが全く読み込めてないものがあったりします EUC、UTF8関係なく起きるので、いまいち原因は掴めてないんですが、解決策(と言うか逃げ方)としては、
こんな風に作ったりしてます 極端なように見えますが、デフォルトのスキンも似たようなもんなんで、これがある意味正解なのかなぁなんて思ってます |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
早速の返信有難うございます! >EUC、UTF8関係なく起きるので、 なんと、そうだったのですか…。 うちでテストした限りでは ・UTF-8版Nucleus(これのみSakuraに設置)にUTF-8版スキン ・EUC-JP版NucleusにUTF-8版スキン では起こらず、 ・EUC版NucleusにEUC版スキン ではすべて起こったので、UTF-8では大丈夫なのかな?と思い込んでいました >スキンは読み込めるけどテンプレートが全く読み込めてないものがあったりします こちらは、skinbackup.xml上では スキン&テンプレート名>スキンの中身>テンプレートの中身 の順で書き込まれているため、のようで、途中に日本語が挟まるとそれ以降の項目が空になってしまうみたいでした。 (テンプレートのみ空になる場合なら、スキンには日本語(2バイト文字?)の記述が無く、 テンプレートに日本語の記述がある) 古いバージョンのNucleusですが、このトピックも症状が近いみたいです。手がかりになりますでしょうか…? http://japan.nucleuscms.org/bb/viewtopic.php?p=5826 ------------- 追記:お礼遅れてしまってごめんなさい、回避法も有難うございます! defaultスキンがその構造でしたね。盲点でした 移植中のもの、構造が綺麗な事で推したいスキンなので、もう少し他の方法も探してみたいと思います。 _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ |
||||||||
|
|
|||||||||
|
mas モデレーター ![]() 登録日: 2003.11.14 記事: 292 所在地: 埼玉 |
vicura 期待しています。 がんばってください |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
>masさん 有難うございます、微力ながらがんばってきます…! ところで、上の読み込み失敗の件なのですが、別トピックで出ていたmbstring周りって関係ありますでしょうか? 設定書き写しておきます。xrea上の、EUCで置いているほうのサーバー二つとも同じ設定でした。 xrea(s151、s212) mbstring Multibyte Support enabled Multibyte string engine libmbfl Multibyte (japanese) regex support enabled Multibyte regex (oniguruma) version 3.7.1 Directive Local Value Master Value mbstring.detect_order auto auto mbstring.encoding_translation Off Off<.htaccessでLocal Valueをonにしてみましたが、だめでした mbstring.func_overload 0 0 mbstring.http_input auto auto mbstring.http_output pass pass mbstring.internal_encoding EUC-JP EUC-JP mbstring.language Japanese Japanese mbstring.strict_detection Off Off mbstring.substitute_character no value no value こちらはUTF-8で置いているほうのサーバーです。 EUC版のスキンを読み込みしてみましたが、こちらでは問題なく (もちろん文字化けしていますが)読み込めています。 sakura(www929) Multibyte Support enabled Japanese support enabled Simplified chinese support enabled Traditional chinese support enabled Korean support enabled Russian support enabled Multibyte (japanese) regex support enabled Directive Local Value Master Value mbstring.detect_order no value no value mbstring.encoding_translation Off Off mbstring.func_overload 0 0 mbstring.http_input pass pass mbstring.http_output pass pass mbstring.internal_encoding ISO-8859-1 no value mbstring.language neutral neutral mbstring.substitute_character no value no value _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ 最終編集者 輝竜司 [ 2007.03.19 (月) 14:10 ], 編集回数 2 回 |
||||||||
|
|
|||||||||
|
shizuki モデレーター ![]() 登録日: 2006.03.23 記事: 891 所在地: 西播磨 |
あ、パーツごとにばらさなくても、 メインの目次ページ
個別アイテムページ
月別アーカイブページ
アーカイブリストページ
なんてのもアリです これだと、それぞれのスキンに書き込んでる内容をファイルに分けるだけで、パーツ別けに頭を悩ます必要もありません ちなみに、<%parsedinclude%>は、3段までいけるので、インクルードしたファイルの中でもう一回インクルードして、さらにもう一回インクルードできます |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
shizukiさん有難うございます!なるほど、全部インクルードしてしまうんですね。 移植元のスキンの方針から、出来ればブログの基本機能の範疇で何とかしたいなあ、と思うのですが、 インクルード式も検討したいと思います。有難うございます! #でもあれですね、やっぱり普通はうまくいっているんでしょうか _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
先ほど、xreaに置いていたNucleusの片方をv3.3 UTF-8 Beta3にアップグレードし、 データベースもUTF-8で作り直してみました。 すると、 1)UTF-8版skinbackup.xmlを読み込み:正常に読み込み可能 2)上記skinbackup.xmlをEUCに変換したもの:日本語以降のスキンパーツ・テンプレートが空 となりました。 バージョン違いなので比較は出来ないのですが、さくらに置いたUTF版Nucleus3.24ではこのような症状はなかったので、 これはNucleusが原因ではなくて、サーバーの設定に依存するものでしょうか -------- phpinfo()で出てきた設定?の中で、他にも文字コードまわりの記述があったところをメモしておきますね。 xreaの方はここで記述されている文字コードと、mbstring.internal_encodingの値が違うみたいですが…。 xrea(s151、s212) iconv support enabled iconv implementation glibc iconv library version 1.9 Directive Local Value Master Value iconv.input_encoding ISO-8859-1 ISO-8859-1 iconv.internal_encoding ISO-8859-1 ISO-8859-1 iconv.output_encoding ISO-8859-1 ISO-8859-1 sakura(www929+mysql23) iconv support enabled iconv implementation libiconv iconv library version 1.9 Directive Local Value Master Value iconv.input_encoding ISO-8859-1 ISO-8859-1 iconv.internal_encoding ISO-8859-1 ISO-8859-1 iconv.output_encoding ISO-8859-1 ISO-8859-1 _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ |
||||||||
|
|
|||||||||
|
kotorisan 登録日: 2007.01.17 記事: 7 |
nucleus/libs/skinie.php のプログラムミスです。 phpのヘルプを読みます。「CVIXML パーサ関数」 サポートされるソースエンコーディングは、 ISO-8859-1, US-ASCII , UTF-8 です ということで 3種しかphpは、xmlを理解できないのです。 ・読み込み時にphpが理解できる上記3種にコード変換を行うか ・xmlをutf8で書き出してもらうように改良するか しかほうほうはないと思います。 根本的な解決は 本家または、日本版で改良してもらうのがいいです。 http://okamerin.com/nc/blogmaster/fix_libs_skinie.htm こちらにアップしておきましたので ご覧ください。 最終編集者 kotorisan [ 2007.04.02 (月) 17:00 ], 編集回数 1 回 |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
>kotorisanさん レス有難うございます、記事を参考にコアの該当部分を入れ替えたところ、 xreaに設置したNucleusで、文字コードがEUCかつ日本語を含むskinbackup.xmlでも うまく読み込めるようになりました! (なおかつ、skinbackup.xmlがEUCでもUTFでも不具合なく読み込めています) サーバーによって読み込めたり読み込めなかったりしているのは、 xreaの古い番号のサーバーでは文字コードの自動変換(?用語が分からないのですが…>参考リンク)がoffになっている、 という記事を見かけたので、そのあたりが原因で症状が出たのでしょうか? ともあれ、本当に有難うございます! _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ |
||||||||
|
|
|||||||||
|
shizuki モデレーター ![]() 登録日: 2006.03.23 記事: 891 所在地: 西播磨 |
UTF-8版で、本家で配布されてるスキンが途中までしか読み込めなかった件も、お二方のおかげで解決しました というか、表示される文字のエンコードと、MySQLの文字エンコードが合ってなかったのが原因でした 一番の問題はMySQLにあったようです 文字コードを合わせたところ、問題なくUS-ASCIIオンリーの本家のスキンも途切れることなく読み込むことが出来ました EUCの方はまだ試せていないんですが、これはkotorisanさんの書かれた方法で対応できたようですので、この辺もあわせて本家に報告できればいいんですが… いかんせん英語力が…orz |
||||||||
|
|
|||||||||
輝竜司![]() 登録日: 2004.12.24 記事: 33 所在地: 横浜 |
英語は私も…orz _________________ 日々何か描いてます。 移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いします http://citrocube.com/ http://nc.vicuna.jp/ |
||||||||
|
|
|||||||||
|
kotorisan 登録日: 2007.01.17 記事: 7 |
本家の掲示板に投稿しました。 ISO-8859-1の扱いがよくわからないので 変換しないようにしました。 コードが間違っていたり、いい案があれば誰か修正してください。 http://forum.nucleuscms.org/viewtopic.php?t=18449 では、私はこの件から 手を引きます |
||||||||
|
|
|||||||||
|
|
|||||||||
|
All times are GMT + 9 Hours
新規投稿: 不可 Powered by phpBB © 2001, 2002 phpBB Group |
|||||||||