MT5.02で初めて「コミュニティ掲示板」を新規で作成し、再構築を行ったところエラーとなりました。
エラーメッセージからソースを調べたところ、エラーがでているテンプレート内でmt:Include moduleされているテンプレートモジュールの一部が無いことが分かりました。
無いモジュール:
・ヘッダー
・フッダー
・フォームフィールド
ヘッダー、フッダーは仮で作成しましたが、「フォームフィールド」なるモジュールの書式が分からず、困っています。
どうやら元々デフォルトのテンプレートで不足があるようです。コンパイラ?がインタプリタ式なので他にも無いモジュールが存在するかもしれません。
コミュニティ掲示板を初期作成してもエラーが出なくなるよう、デフォルトのテンプレートごと修正したいのですが、何か方法はありますでしょうか?
こんにちは。
コミュニティ掲示板を設置したことがないので、詳しくはありませんが、
システム⇒テンプレート(グローバルテンプレートの管理)に
フォームフィールドのモジュールは、存在しますが、そちらにはありませんか?
その3つは正常なら、システムテンプレートのモジュールとして作成されているはずです。
推奨環境どおりの状態で、それらが作成されない状態に出会ったことはありません。
おそらくMT5.02が、正常に動作しているように見えるだけで、内部では動作に問題が発生している状態だと思われます。
テンプレートの修正ではなく、どちらかというと、ご自分で設定なさった環境等を列挙し、問題を見つけられた方が良いと思いますよ。
理恵さん、oscarさん、早速のコメントありがとうございます。
上の3つのテンプレートはどこにも登録されてない状態でした。
・コミュニティ掲示板個別のデザイン->テンプレート
・コミュニティ掲示板個別のカスタムフィールド
・システム->テンプレート
また、別トピで「MT5自体がコミュニティ・ソリューションに対応していないのでは?」という記載がありましたが、当方使用はMovableType5Pro+CommunityPackなのでこれにも該当しないと思ってます。
一応、MT5自体を再インストールしてみましたが、症状は改善しません。
(一回スクリプトを全削除して、MT5.02を回答->ログイン)
大事な情報を記載するのを忘れてまして申し訳ないです。
後はDB自体の初期化ですが...これは最終手段としたいです。
サーバーの環境・特にウェブサーバーとか、DBが関係しているように思いますよ。
特にDBについて正確に記載されるべきだと思います。
oscarさん返信ありがとうございます。
DBやWebサーバは、MT以外でも使用してますが、そちらは特に問題なく動いています。ので、後はDBの中身やスクリプト側の問題になるのかもです。一回、DBを作り直してみたいですが...^^;
以下は後の調査で気がついたこと(自己レス)。
解凍したMT5(MT5.02)のファイル構成を見てみると、一部のパッケージが不足しているように見えます。
デフォルトのテーマはthemesフォルダに格納されてると思うのですが(あくまで予想)、そこにコミュニティ掲示板とコミュニティブログのテーマが入ってませんでした。MT5.00のアーカイブは捨ててしまったので、そちらはどうなのかが気になる...。
MySQL のバージョンは?
>そこにコミュニティ掲示板とコミュニティブログのテーマが入ってませんでした。
これは、5.0 5.01 5.02 とも
classic_blog
classic_website
pico
という同じ構成です。
素人判断ながら、MT のアップロード、各ホルダーごと慎重にアップロードしていますか? SSH (シェル)が使えるサーバーなら、アーカイブをサーバー側で解凍するのが、一番正確ですが。単純なミスのように思える?!
>MySQL のバージョンは?
5.1.49を使用しています。
>>そこにコミュニティ掲示板とコミュニティブログのテーマが入ってませんでした。
>これは、5.0 5.01 5.02 とも
>classic_blog
>classic_website
>pico
>という同じ構成です。
同じ構成でした。community_blog、community_folumという構成がある、と思ってましたが、違うのですね。
アーカイブはサーバ側での操作で解凍を行ってます。
私は、初心者の質問に答えてきました。相手がベテランなら、答える必要もないし、その能力もないからです。
トピックを立ち上げた文章を読んで、初心者と判断しました。でも、私の判断は間違っていました。
ベテランなら、ベテランらしく、アドバイスを受ける上での必要な情報を小出しにすべきではないと思います。「それはもう試しています」みたいなこと言われたら、アドバイスしたほうは「おいおい、こら」と心証悪くしますよ。
WordPress のフォーラムなら「筆問のルールを読め」とだけ言われ、うち捨てられますよ(笑)ここは、こころ優しい人多いですから面と向かってきついこと言う人いませんが(わたしが、いるって)。
申し訳ないです。
以後気をつけます。
>MT以外でも使用してますが、そちらは特に問題なく動いています。
えーと、言いたかったのは、それぞれが動作する上での条件を持っているはずで、MTなりの動作条件は満たしているのかを知りたかっただけです。
http://www.movabletype.jp/documentation/mt5/installation/system.html
>DB自体の初期化
たぶんその様な話では無く、そもそも対応して無いとか、その手の話っぽい気がしました。(個人的な感想ですが)
もっとも現時点ではその様な箇所は見受けられませんが。
最悪ピンポイントで、ある条件下だと、正常に動作しないバグとかの可能性も残っていますね。その判断の為にも、動作環境を詳細にお書きになる事をおすすめします。
>そこにコミュニティ掲示板とコミュニティブログのテーマが入ってませんでした。
これらはCommunitySolutionの一部ですから、addons/Communitu.pack以下になります。
動作スペック的な話であればこの場で質問するのは失礼かと思い、最初に調べは終えていましたので、特に記載しませんでした。申し訳ないです。
・MT自体の動作スペックやコミュニティソリューションの利用については、基本確認としてMovableTypeのHPで調査。問題なし。
・mt-check.cgiでも動作可能の判定OK。
・元々classic_blogという基本ブログの作成および動作はできている。
・しかし特定のテンプレートが作成できない状態。(ヘッダー、フッダ-、フォームフィード)
以上から、環境的な問題ではなく、特定のテンプレートが作成できない問題であると判断していました。
>>そこにコミュニティ掲示板とコミュニティブログのテーマが入ってませんでした。
>これらはCommunitySolutionの一部ですから、addons/Communitu.pack以下になります。
確認しました。addons以下にCommunity.pack、Commercial.packが含まれていました。
これらの構成については特に何も操作していないのですが、この場所に置いたままで問題ないのでしょうか?
>以上から、環境的な問題ではなく、特定のテンプレートが作成できない問題であると判断していました。
なるほど、そうでしたか。確認済みならば問題ないのでしょう。
この様な事をお聞きした背景には、正常に動作をしていないと報告される方の大半が、実は動作環境を満たしていない事が判明しているからです。Perlのバージョンや、DBの種類です。
特に、この様な状況が発生するのはコア機能以外の部分(コマーシャルパック機能やコミュニティパック機能)に多く感じられます。
>この場所に置いたままで問題ないのでしょうか?
はい、使用するために移動させるという訳ではなく、この場所にある事が必要になります。
>個人ライセンスなのでSixApartにも聞けないと思うので
サポートを受けるのは不可ですが、特定の環境下で動作しない等の報告は可能ですよ。ただし漠然とした報告ではなく、サーバーの環境周りなど、詳細な設定情報を元に、複数環境で再現させられる事が重要になります。
同一レンタルサーバー内での繰り返しなどでは、サーバー固有の問題の可能性があるため、対応出来ない事が多々あります。
了解しました。
バグフィックスとして報告するかは今後検討してみます。
また検証結果を報告します。
今度は、現在運用しているのと別のデータベースを作成して、そちらでMTの構成を作成しました。が、やはり同じ現象となりました。
>「コミュニティ掲示板」を新規で作成し、再構築を行ったところエラーとなる。
MySQLやWebサーバは正常に動いてますし、他のテンプレートは正常に作成できているので、単純にMT側のバグのような気がします。
ただ、個人ライセンスなのでSixApartにも聞けないと思うので...次のバージョンで治っていることを期待したいです。治ったらこのスレッドで報告しますね。
...やっと分かりました!
◇
1)無いテンプレートについて
コミュニティ掲示板で使用する「ヘッダー」「フッダ-」「フォームフィールド」はグローバルテンプレートにありました。addons\Community.pack\templates\global配下にテンプレートがありました。
◇
2)テンプレート内の記述誤り発見(英語←→日本語)
テンプレートから別のテンプレートを読み込むmt:Includeで、テンプレートの指定をするのを英語表記でおこなうところが"日本語"になっていたため、テンプレートが読めなかったようです。
コミュニティ掲示板の初期テンプレートでは、mt:Includeでのテンプレート指定は"日本語"で指定されていますが、グローバルテンプレートでの名称が"英語表記"であるため、参照エラーになってたのだと思います。グローバル向けに英語表記に直したところ構築ができました。
例えば...
ブログ記事フォームテンプレートの記載では:
36行目:
となっていますが、「フォームフィールド」という日本語名称のテンプレートはグローバルにもローカルにもありませんが、以下のように修正すると、
36行目:
グローバルテンプレートの"Form Field"を参照できるので構築が成功するようです。
ヘッダーやフッダ-も同様です。
◇
逆にグローバルテンプレートのフッター内でも、日本名のテンプレートに対して英語指定をおこなっているところがあります。
Footerテンプレート:
4行目:
正しくは、
4行目:
こちらはローカルテンプレートにあります。
◇
まだアーカイブやエントリが未登録なので、他のテンプレートにもこういった系のエラーがあるかもしれません。こちらは個別に追っていこうと思います。グローバルテンプレートについては今まで使ったことがなく、気がつくのが遅れました。当方の運用ではグローバルテンプレートは管理しにくいので、ローカルに移植するなどを考えたいと思います。
(ローカルに日本語表記のものを作ってもいいですね)
◇
一人ぼっちで悩んでたらいつまでも解決できなかったかもです。
oscarさん、理恵さん、ありがとうございました m(__)m
しまった、ソース部分が見えなかったですね^^;
◇ブログ記事フォームテンプレート36行目
◇Footerテンプレート4行目
ツールで変換するのね;;;
>テンプレートの指定をするのを英語表記でおこなうところが
それは、セットアップの初期段階で言語指定が英語のままだったとかだと思いますよ。
ブログ作成時の言語指定部分にも、その点に付いての注意書きがあったはずです。
MT5での注意点として、書かれていた事ですよ。結局操作自体を、正しく行なっていなかったのが原因だった訳ですね。
結局、この事例で学んだことは、
oscar さんも、最後に書かれていますが、
以下で、yujiro さんが、サマリーされています。素人の私のようなものには、より理解しやすいです。
http://www.koikikukan.com/archives/2010/08/24-035555.php
Movable Type 5で「テンプレート「Create Entry」の再構築中にエラーが発生しました」というエラーが発生する件について