4

これは非常に単純な質問ですが、私を苛立たせました。たとえば、次のようにコメントしたいと思います。

<!--  
        {if $scenes}
            <!-- Scenes -->
            {include file="$tpl_dir./scenes.tpl" scenes=$scenes}
        {else}
            <!-- Category image -->
            {if $category->id_image}
            <div class="align_center">
                <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category')}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" />
            </div>
            {/if}
        {/if}
    -->

このテキストをすべてコメントアウトしたいので、ブラウザはこのコードを表示しません。問題は、私がすでにコメントを持っていて、ブラウザが終了タグを混乱させているように見えることです。したがって、この場合、最初の開始コメントタグは、テキスト全体に影響を与えたい場合にのみ{if$scenes}に影響を与えます。どうすればいいのか教えていただけませんか?!?!

ありがとう、

ダニ

4

2 に答える 2

3

私があなたを正しく理解しているなら、あなたはあなたのHTMLコメントをネストできるようにしたいと思うでしょう。これを行うには、二重ダッシュ--を2つの単一ダッシュとスペースに置き換える必要があります- -

基本的に、

<!--
  This is a comment.
  <!- - 
    This is a nested comment.
  - ->
-->

これをコードに適用すると、次のようになります。

<!--  
        {if $scenes}
            <!- - Scenes - ->
            {include file="$tpl_dir./scenes.tpl" scenes=$scenes}
        {else}
            <!- - Category image - ->
            {if $category->id_image}
            <div class="align_center">
                <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category')}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" />
            </div>
            {/if}
        {/if}
    -->
于 2012-08-06T23:01:00.183 に答える
1

あなたが持っている言語HTMLではなく、HTMLを生成する言語です。あなたがその非常に例を示しているので、言語は明らかにネストするif/else条件をサポートします。したがって、HTML生成言語自体にネストコメントがない場合でも、条件を使用してそのセクションの実行を削除し、そのHTMLの生成を抑制することができます。

トークンfalseがブール値のfalseを表すとします(指定されたテンプレート言語でfalseを正しい式に置き換えます)。

{if false}
    {if $scenes}
    <!-- ... >
    {else}
    ...
    {/if}
{/if}

ブロック内のすべてはif false、プロセッサによる出力から除外されます。

于 2013-10-06T16:28:36.060 に答える