ホームページ  >  記事  >  バックエンド開発  >  DEDEEIMS タグをネストできない問題に対する 2 つの解決策の詳細な紹介

DEDEEIMS タグをネストできない問題に対する 2 つの解決策の詳細な紹介

黄舟
黄舟オリジナル
2017-04-01 09:24:501213ブラウズ

この記事では、DEDEEIMS タグがネストできない問題の解決策を主に 2 つ紹介します。つまり、dede タグに別の dede タグがネストされている場合に正常に解析できない問題の解決策を紹介します。続く 以下のタグ:

コードは次のとおりです:

{dede:
list
 pagesize=’6′}
<li><a href="/plus/jobs.php?
lang
={dede:global.user_lang/}&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}


実行すると、実際には {dede:global.user_lang/} が解析されずにそのまま表示されることがわかり、非常に困惑したので、ネットで検索しました。 DEDECMS がタグをネストできないという問題の解決策について学び、最終的に 2 つの解決策を見つけました。

オプション 1:

<!–在标签之前,先用
JS
获取标签中需要得到的内容–>
<script type="text/
javascript
">
function get_user_lang(){
  
document
.write("{dede:global.user_lang/}");
}
</script>
{dede:list pagesize=’6′}
<!–然后在标签中调用该JS
函数
把内容给显示出来–>
<li><a href="/plus/jobs.php?lang=<script type="text/javascript">get_user_lang();</script>&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}


明らかに、この方法は私が望むものではありません。なぜなら、この方法は複雑であるだけでなく、維持するのも簡単ではありません。さらに重要なことに、これは、 behaviorと構造を可能な限り分離する 一貫性がなかったので、インターネットで検索したところ、より便利な解決策を見つけました。それは、{dede:global.user_lang/}を[field:global.user_lang/]に変更することです。

オプション 2:

{dede:list pagesize=’6′}
<li><a href="/plus/jobs.php?lang=[field:global.user_lang/]&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}

dedecms テンプレートのダウンロード アドレス: www.php.cn/xiazai/code/dedecms

この方法は非常にシンプルであるだけでなく、メンテナンスも簡単ではありませんか?構造と動作の分離に準拠します。もちろん、適切な実践は他のタグや DEDECMS 内にも適用されます。

以上がDEDEEIMS タグをネストできない問題に対する 2 つの解決策の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。