ホームページ >php教程 >php手册 >テンプレートステートメントの分析と知識スキルについて話し合う

テンプレートステートメントの分析と知識スキルについて話し合う

WBOY
WBOYオリジナル
2016-06-13 12:21:451122ブラウズ

  一、模板 调用
比如在某个模板中,想调用另一个模板中的内容,可以用下面的语句:
{template xxx}
假设,建立了一个新模板名字叫 "abc.htm" ,在后台 模板编辑时只会显示为 "acb",需要在 index 中调用它,那么就在index 中适当位置加入 {template abc}
那么就会自动代用它。

相关实例: index 模板中,最顶有 {template header},最底有 {template footer}
相关疑问:
那么在这个 abc 模板中需要有 吗?
不需要的!想要显示什么,就写什么,因为它只是整个网页的一部分! 都已经在header和footer模板中了。


二、固定参数
$seohead                        --- 后台设置 的头部信息
$charset                        --- config.inc.php中设置语言字符集,必不可少,不能删除!
$extrahead                        --- 控制论坛 自动跳转参数,必不可少,不能删除!
{eval updatesession();}                --- 更新论坛 session 表的参数,必不可少,不能删除!
{eval output();}                --- 结束论坛输出,必不可少,不能删除!

以上的参数以Discuz ! 4.0为准,这些参数会因应不同版本而有所不同!
还有一些 $xxx 的也是一些参数如非插件 作者或程序 开发请勿乱修改!


三、数据 判断
   1、在模板中会经常见到xxxxx的语句。
      这些并非普通HTML 中的注释,而是Discuz!特有的模板判断语法,就好比php 或者其他 语法中的 if,else,then等等。
      通过这些语法,能够达到不同的模板效果

相关实例:
header 模板中

复制内容到剪贴板
代码 :
<!--{if $discuz_uid}--> --- 如果获取了 $discuz_uid ,即显示下面资料(判断1)<br>        <span class="bold">$discuz_userss: </span> <a href="$link_logout">{lang<span class="t_tag">logo</span> ut}</a> <br><br>        <!--{if $maxpmnum}--> --- 如果有 $maxpmnum,即显示下面资料,否则不显示(判断2)<br>                | <a href="pm.php" target="_blank">{lang pm}</a> <br>        <!--{/if}--> --- 结束了这个判断(判断2) <br><br>        |  <a href="memcp.php">{lang memcp}</a> <br><br>        <!--{if in_array($adminid, array(1,2,3))}--> --- 如果$adminid在1,2,3这三个范围内,即显示下面资料,否则不显示(判断3)<br>                | <a href="admincp.php" target="_blank">{lang admincp}</a><br>        <!--{/if}--> --- 结束了这个判断(判断3) <br><br><!--{else}--> --- 如果获取不了 $discuz_uid ,则显示下面资料 <br><br>        <span class="bold">{lang guest}:  </span><a href="$link_register">{lang register}</a><br>        | <a href="$link_login">{lang login}</a> <br><br><!--{/if}--> --- 结束这个判断(判断1)

2. ステートメント xxx はテンプレートでよく見られます。
データが出力されるまで自動的に終了するループ文です。
これらの構文により、同じ一連のデータをループで表示できます。

関連例:
ヘッダー テンプレート

コンテンツをクリップボードにコピーします
コード:
<!--{loop $plugins['links'] $plugin}--> --- ループ 1 を開始し、プラグインを決定します <CODE id=code1><!--{loop $plugins['links'] $plugin}--> --- 循环1开始,判断插件<br>        <!--{loop $plugin $module}--> --- 循环2开始,判断插件模组 <br>             <!--{if !$module['adminid'] || ($module['adminid'] && $adminid > 0 && $module['adminid'] >= $adminid)}-->| $module[url] <!--{/if}--> <br>        <!--{/loop}--> --- 结束循环2 <br><!--{/loop}--> --- 结束循环1 --- ループ 2 が開始され、プラグイン モジュールを決定します
'] && $adminid > 0 && $module['adminid'] > = $adminid)}-->| $module[url]

--- ループ 1 を終了します
4. 言語呼び出し

テンプレートでは、{lang xxx} のようなステートメントがよく見られます。言語パッケージ内の単語を呼び出すために使用されます。 テンプレート内で呼び出されるもののほとんどは templates.lang.php です。

言語パックの構造を見てみましょう:
コンテンツをクリップボードにコピーします<? -- 宣布php语言开始<BR>$language = array<BR>( --- 以上宣布语言包定义开始 <br><br> 'title' => '标题', <br>        调用字符    显示文字 <br>        'never' => '从未', <br>        调用字符    显示文字<br>        ....<br>); --- 宣告语言包定义结束<br>?>  -- 宣布php语言结束
コード: & lt ;?-PHP 言語の開始を宣言します <p> $ Language = Array <span style="COLOR: blue"> title' => 'タイトル', </span> 呼び出し文字表示text <br> 'never' => 'Never', <br> 呼び出し文字 <br> ....<br>) - -- 言語パッケージ定義の終了を通知します <br>?> - php 言語の終了を発表します </p>


関連例:

言語呼び出しを追加し、上の行に 'abc' = を追加するとします。 'title' => 'title',
> ; 'これはテスト言語呼び出しです'、
最後の呼び出し文字と表示テキストは必須であり、これは '' によって引き起こされる必要があります。
を追加した後、テンプレート内でそれを呼び出すことができます。テンプレート内に {lang abc} を記述すると、直接表示されます。これは、テスト言語呼び出し 特記事項: 言語を追加するか言語パックを変更した後は、キャッシュを更新する必要があります。

5.
スタイル パラメータ呼び出し

はテンプレート { XXXXX} ステートメント。 {} は大文字にする必要があります。

これらは、呼び出しスタイルのカラースキームのパラメーターです。自分で追加することもできます。 メソッド

は次のとおりです。
1. パラメーターを追加するスタイル ポイントを入力します。 [詳細]
2. 入力後の下部には、入力する列が 2 つあり、1 つは変数、もう 1 つは置換内容です


関連例: 変数の場合は、FOOTERCOLOR と書き込みます (大文字を使用する必要があることに注意してください) 内容を置き換えて #003399 と書き込みます送信後、テンプレートを変更して と書き込みます>テスト スタイルのカスタム変数< ;/font>その結果、このテストでは、塗りつぶされた置換コンテンツの色に従ってスタイル カスタム変数が表示されます。 上記の説明を踏まえると、テンプレートを変更するときに何に注意する必要があるか、または何を適用できるかについて多くのことを理解できるはずです。 お役に立てば幸いです。楽しんでください。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHP オブジェクト指向ガイド (10) Final static const キーワードの使用次の記事:PHP オブジェクト指向ガイド (10) Final static const キーワードの使用

関連記事

続きを見る