0

現在、エクスプレッション エンジン サイトをあるサーバーから別のサーバーに移動する作業を行っていますが、デバッグに苦労している 1 つの問題に気付きました。ロゴ画像をアップロードするとすべて問題ないように見えますが、ロゴが表示されているindex.phpページにはこのコードがあります

{embed="shared/head"}

<body class="{if segment_1 == ''}home{if:else}{segment_1}{/if}">

    <div id="page" class="container">
        <div class="span-22 prepend-1 append-1 last">

            {embed="shared/masthead"}
{if logo !=''}
  <div class="news_item_logo">
    {organization}
      {if link}<a href="http://{exp:php_text_format type="lowercase"}{if url !=''}{url}{if:else}{name}{/if}{/exp:php_text_format}"><img src="{logo}" width="130" alt="{title}" /></a>{if:else}
      <img src="{logo}" width="130" alt="{title}" />{/if}
    {/organization}
  </div><!-- /.news_item_logo -->
  <ul>
    <li><h3>{title}</h3></li>
    <li>{pub_date}</li>
  {organization}
    <li>{if link}<a href="http://{if url !=''}{url}{if:else}{name}{/if}">{/if}{exp:php_text_format type="lowercase"}{if url_text != ''}{url_text}{if:else}{name}{/if}{if link}{/exp:php_text_format}</a>{/if}</li>
  {/organization}
    <li>{if file}<a href="{site_url}{file}">PDF</a>{/if}{if web_link !='' AND file !=''}&nbsp;&nbsp;|&nbsp;&nbsp;{/if}{if web_link}<a href="{web_link}">HTML</a>{/if}</li>
  </ul>
{if:else}
  <ul class="no_logo">
    <li><h3><a href="{web_link}">{title}</a></h3></li>

私の質問はこれです。if ステートメントの周りに中かっこ {} が表示されます。最初にそれがどの言語であるかを知りたいのですが、次に php print_r() のようにデバッグする方法があります。これらの変数 "segment1" と "logo" と "organization" と "url" を何をどのようにテストできるか知りたいです これらの変数をどこでどのように検査するのですか

4

3 に答える 3

3

{embed="shared/head"}-共有されたテンプレート グループからテンプレートヘッドを含めます

<body class="{if segment_1 == ''}home{if:else}{segment_1}{/if}">

URI セグメント (EE/CI は、site.com/segment1/segment2/xxx などのセグメントで動作します) が空の場合 (ホームページ (www.site.com) にいる場合は、body クラスを追加しません。

それ以外の場合、ユーザーはページ上にいるため (EE ではこれはテンプレート グループです)、クラスをテンプレート グループの名前に設定します。

site.com/about-us生成class="about-us"- ページ固有のスタイリングに便利です。

{embed="shared/masthead"}-マストヘッドを含める

等々。

残りは、変数に値があるかどうかを確認する条件であり、それらを出力します

EE2.0を使用していると思いますが{organizaton}、具体的にはわかりませんが、そのスタイルは次のとおりです。

{organization} {foo} {/organization}

少なくともコード イグナイターでは、通常、foreach またはレコードセットのループと同等です。

foreach($organizations as $organization) { // do something }

于 2011-02-02T11:22:55.173 に答える
3

index.php 内で以下を使用して、テンプレートで指定された変数と値に関する情報を得ることができます。

<?php

$EE = get_instance();
var_dump($this->EE->TMPL);

?>

これを機能させるには、テンプレートで PHP を有効にする必要があることに注意してください (テンプレートの PHP を参照)。

于 2011-02-01T09:39:17.573 に答える
2

これは Expression Engine 独自のテンプレート言語で記述されています。

変数をデバッグする方法があるかどうかを確認するには、ドキュメントを確認する必要があります。

おそらく役立つリンク:

于 2011-01-31T02:38:26.937 に答える