- 締切済み
MTEntriesを書くと、エントリーが重複してしまうのですが。
こんにちは。どうにも対処法が分からず、ここに書き込ませていただきました。 現在movable type4でブログを作っているのですが、MTEntriesでエントリーを作ると、同じエントリーが二つ出来てしまうのです。MTEntryBodysで内容を書いても、全く同じ内容が二つ出来てしまって、MTEntriesのタグを消すと、一つだけ表示されるようになるのですが、MTEntriesの使い方には何か必要な条件などがあるのでしょうか。どなたか解決法をご存じの方はいらっしゃいますでしょうか。よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- DSDddd
- ベストアンサー率0% (0/0)
<MTEntries> <MTEntriesHeader> <ul> <li class="firstChild">MTEntriesのループ処理の中で、一番最初のみ出力されるブロック</li> </MTEntriesHeader> <li><MTEntryTitle><br> ここに個々のエントリーの出力を表示するためのタグを入れる。 エントリーの数だけループする。</li> <MTEntriesFooter> <li class="lastChild">MTEntriesのループ処理の中で、一番最後のみ出力されるブロック</li> </ul> </MTEntriesFooter> </MTEntries>
- compequal
- ベストアンサー率42% (61/145)
遅くなってスミマセン。 うーん、いただいたソースを見せていただくに、4.0を使ったことがないというのもあるので、そんなにゴリゴリ回答するべきでもないと思うのですが… (1)確認ですが、index.htmlのテンプレートの編集をされていらっしゃるんですよね?新規エントリー投稿で、いただいたソースを書いていらっしゃるわけではないですよね。(大変失礼な確認で恐縮です) (2)ブックオフで買ってきた3.0のタグ本とかを参考にするのはやめたほうがよろしいかと思います…。基本的には、MovableTypeはヘルプを見るとだいたいのタグのガイドも載っているはずなので、3.0のガイドブックを参考にしていくよりも、ヘルプを参照したほうが確実性が高いとおもいます。 (3)かなり初心者の段階で、テンプレートをゼロから編集するのはいずれにせよ、少し危険かと思います。ブログを新規作成した際のデフォルトのテンプレートがあると思いますので、編集作業としては A.デフォルトテンプレートに修正を加えながら B.細かに反映確認をして、 C.なるべく、手元のテキストエディターなど、Undo/Redoが繰り返せる環境でソースは編集 という方法を採るのがよろしいかとおもいます。 MovableTypeのタグの細かいガイドはなかなか詳しい人も多くないですからね…。自分で反映確認しながらやっていける環境をきちっと作っていくのが重要か、と。ウェブデザイナーの専門職の方だと、詳しい人もいらっしゃいますが、まだ4.0は信頼性が高くないということで、移行をためらっているウェブデザイナーの方もおおいようなので。
- Muller3
- ベストアンサー率81% (800/979)
どのテンプレートにそのタグを書いているのかなど状況がちょっとわからないので、条件だけ。 ブログ記事テンプレートの場合はそれ自体がMTEntriesコンテキストなので、MTEntryBodyの表示にMTEntriesタグを記述する必要はありません。(表示したい場所にMTEntryBodyタグをぽんと入れればよい) 他のところ(インデックスやカテゴリー他アーカイブテンプレート)で使う場合はMTEntries内に記述する必要があります。
- compequal
- ベストアンサー率42% (61/145)
うーん、3.1の頃ならゴリゴリソースを編集してたのでわかるかも、な感じはあるのですが4.0だとちょっと責任もてないですが、 いずれにせよ、ソースを…ソースを張るんだgessoriさん! と言うのがまずは第一の感想でございます。 たぶん、パッと聞いた限りなんか、ソースで何かを二重で記述してしまっている印象が濃厚な気分がしましたので。 <MTEntries>~</MTEntries>の間にさらに<MTEntries>~</MTEntries>が入っているとか…うーん、何かわかりませんけれど、何かがだぶっていたり、入れ子構造がおかしくなっていたりする印象を持ちました。
補足
compequal様、迅速かつ丁寧なご返信ありがとうございました。大変稚拙ながら、ソースを貼らせてもらいます。 これはブックオフにあった本を基に作っていて、まだまだ何にもしていない状況でつまづいてしまったわけなんです。すみません。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN" "http://www.w3.org/TR/xhtmll//DTD/xhtmll-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> <title>マル</title> <link rel="stylesheet" href=""type="text/css"/> </head> <body> <div id="container"> <div id="header"> <h1 lang="en"><a href="">マル</a></h1> </div> <div id="content"> <mtentries> <h3>そういえば</h3> <p>このあいだ、100円拾いました。</p> <h3>test</h3> </mtentries> </div> </div> </body> </html> ↑これだけしか書いていないのですが、再構築をしてみると、「そういえば」と、「このあいだ、100円拾いました。」が二つずつ出てしまうのです。 もしかすると4.0なのに3.0の書き方でやっているのがよくないのでしょうか。大変ご迷惑をおかけしますが、アドバイスをいただけたらうれしいです・・・。