0

私はこのようなコードを持っていました:

{exp:channel:entrieschannel="blog_channel"limit="10"}
<h1>{entry_title}</h1>
<p>{entry_body}</p>
<p>{entry_author}</p>
{/exp:channel:entries}

基本的に、expタグを含むHTMLコンテンツを個別に作成し、テンプレートファイルに配置する必要があります。私はこれを行うことによってこれを試みました:

{exp:channel:entries channel="blog_channel"limit="10"}
{embed="blog/post"}
{/exp:channel:entries}

私の問題は、すべてのタグ({entry_title}、{entry_body}など)が文字通り表示され、それらが変数として扱われていないという出力です。

どうすればこれを修正できますか?

ありがとう、ピーター

4

1 に答える 1

1

あなたがやろうとしているように見えることについては、埋め込みを避け、代わりにスニペットを使用することをお勧めします。これらはより効率的ですが、たとえば、複数のテンプレートで同じマークアップを使用できるため、繰り返す必要はありません。このようなもの:

{exp:channel:entries channel="blog_channel" limit="10"}
    {sn_blog_post_list}
{/exp:channel:entries}

次に、スニペットで、この場合は「sn_blog_post_list」と呼ばれます。

<h1>{entry_title}</h1>
<p>{entry_body}</p>
<p>{entry_author}</p>

これにより、エントリループのさまざまなインスタンスに同じスニペットを使用できるようになります。したがって、別のテンプレートで、次のようなことを行うことができます。

{exp:channel:entries channel="blog_channel" limit="30"}
    {sn_blog_post_list}
{/exp:channel:entries}

したがって、これも各ブログエントリにまったく同じマークアップを適用しますが、マークアップを繰り返す必要なしに、前の例のように10ではなく30のエントリを返します。

お役に立てば幸いです。

于 2013-03-06T20:30:44.777 に答える