1

ユーザーがテンプレート変数のチェックボックスをオンにした場合、ソーシャルアイコンを表示しようとしています。
そのため、テンプレート変数の各ページ(テンプレートは1つのみ)にこのチェックボックスを表示するために必要なすべてのものを作成しました。
次に、このコードをbase.htmlに配置します(すべてのチャンクとテンプレートに静的ファイルを使用します-このファイルはBaseTemplate静的ファイルです)

<?php if ($modx->getTemplateVar(1,'Yes')) { ?>
  <a href="#"><img src="assets/templates/default/images/facebook.png" alt="Facebook" style="width: 26px; height: 26px; border: 0; margin-left: 40px;" /></a>
  <a href="#"><img src="assets/templates/default/images/twitter.png" alt="Twitter" style="width: 26px; height: 26px; border: 0; margin-left: 10px;" /></a>
  <a href="#"><img src="assets/templates/default/images/linkedin.png" alt="LinkedIn" style="width: 25px; height: 25px; border: 0; margin-left: 10px;" /></a><br /><br />
<?php } ?>

また、私は試しました:

<?php if ($modx->getTemplateVar($social,'Yes')) { ?>

social私のテレビの名前、は私のテレビの1IDです。

そして、これは私がウェブサイトで得るものです:

getTemplateVar($social,'Yes')) { ?>

これは、チャンク/テンプレートファイルでphpを使用できないためです。スニペットを作成し、TVがチェックインされていることを確認するコードを配置しましたが、結果が得られませんでした。

これが私がテレビを使うために読んだドキュメントです。
何が間違っているのですか?リソースを表示する際のフィルターとしてではなく、このようにTVを使用するにはどうすればよいですか?

4

2 に答える 2

4

これを試してください。これを機能させるためにスニペットを使用したり、コードを記述したりする必要はありません。

テンプレート[base.html]:

[[*social:eq=`Yes`:then=`[[$YourSocialHTMLChunk]]` ]] 

[さらに良いことに、「ソーシャル」TVを1または0の数値タイプに変更します。出力フィルターを再確認する必要がある場合があります:http://rtfm.modx.com/display/revolution20/Input+and+Output+Filters+ (Output + Modifiers)、「eq」が文字列で機能するかどうかはわかりません...]

次に、すべてのソーシャルリンクをYourSocialHTMLChunkに名前を付けたいものに貼り付けます

于 2012-07-04T15:47:26.327 に答える
0

テンプレートでは純粋なPHPを使用することも、Modxではチャンクを使用することもできます。PHPを使用する必要がある場合は、そのためのスニペットを作成する必要があります。

テンプレートまたはチャンクでテンプレート変数に書き込むことで到達でき[*templatevarname*]、コンテンツが出力されます。これは、表示しているページのコンテンツのみを出力することに注意してください。

他のリソースからtemplatevariablesをロードする場合は、そのスニペットを作成する必要があります。

このwikiページを見てください:http ://wiki.modxcms.com/index.php/Placeholders_used_by_MODx_Pages_and_Templates

スニペットの場合は、次のように記述する必要があります。

[!yourSnippetName? &sid=`[[*id*]]`!]

スニペットの内容:

$tvPr = $modx->getTemplateVarOutput(array("templatevarname"),$sid,1);
echo $tvPr['templatevarname'];

http://wiki.modxcms.com/index.php/API:getTemplateVarOutput

于 2012-07-04T10:06:47.147 に答える