問題タブ [smarty3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
smarty - Smartyで余分なHTMLスペースを削除する
すべてのフロントエンドテンプレートにSmartyを多用しています。私は次の状況を観察しました:
Smartyテンプレートが次のようになっている場合:
ブラウザに配信される最終的なHTMLは次のとおりです。
私はそれがよりきれいで、次のようなものになることを期待します:
以上:
とにかく、Smarty 3のいくつかの構成設定でこれを行うことができますか?作成された最終的なHTMLをフォーマットしてクリーンアップするための設定はありますか?
ありがとう
php - smarty キャッシュはどのように機能しますか? キャッシュするタイミングをどのように知るのですか?
持っているキャッシュが十分かどうか、またはキャッシュを再作成する必要があるかどうかを smarty が判断するのはなぜですか? $_REQUEST はできますか? または、Cookie、セッションなどを含むすべてのグローバル... index.php と index.php?task=home は同じキャッシュを持っていますか? Cookie とセッション情報はどうですか? それはどのように機能しますか?キャッシュを最大限に活用したいサイトがありますが、キャッシュがどのように機能するかさえわかりません。
私の質問を理解するのに役立つかもしれないロドニーへの回答: smarty が次のように動的コードを静的 html に変換するかどうかを知りたいです:キャッシュが良いか悪いかを判断しますか。もし私が Hello {$user->username} を持っていたら! ブラッドがページを見ているときにキャッシュしたため、Hello Rodney To Brad が表示されますか?
php - 余分な HTML なしで、CSS を使用して Smarty にグリッド/テーブル構造を作成する
<ul>
3 列のグリッドに変換したい HTMLの基本的なリストがあります。各リスト項目は左に固定幅が固定されているため、理想的には次のようになります。
現時点で私はこれを試しました:
以下に示すように、これは最初の行とは別に機能します。例えば:
更新: これを機能させる唯一の方法は、余分な HTML を追加することです。他に方法はありますか?
php - smarty 配列内にリンクを追加するにはどうすればよいですか
こんにちは、お手伝いできますか
ファンシーボックスポップアップを使用する画像ギャラリーがあります。各画像にはキャプションがあり、キャプションは Web アドレスの例を含むプレーン テキストです: www.mywebsite.com
キャプションを、キャプション テキストに記載されているアドレスに移動するリンクにしたいと考えています。それは smarty 配列の中にあります。ここで出力された「キャプション」に単純な href を追加するにはどうすればよいですか?
私はコーダーではないので、smarty 配列内の構文がよくわかりません。href="http://{$caption}"のようなリンクを 適切な場所に追加するのを手伝ってくれる人はいますか
時間をありがとう サラ
json - json 配列で smarty テンプレートを返す
json 配列で Smarty テンプレートを返すには?
例:
PHP:
jQuery:
smarty - Smarty html_image 画像を縦に並べる
現在{html_image file='pumpkin.jpg'}
、画像の幅/高さを計算する を使用しています。
私がやりたいことは、関数に追加のパラメーターを追加して、コンテナー (親) の高さを渡すことができるようにすることです。
次に、プラグインは次の計算margin-top
によって を計算します。(container_height - image_height) / 2
現時点では、これを JS で行っています。画像が動的にサイズ変更されるため、わずかな遅延があります。これを Smarty 経由でmargin-top
行うと、キャッシュされます。
例として、イメージ [foo.jpg] の高さが 50px で、コンテナーの高さが 100px の場合:
http://www.smarty.net/docs/en/language.function.html.image.tpl
smarty - Smarty Paginate プラグインと Twitter Bootstrap
Smarty Paginate プラグインを使用して Twitter Bootstrap ページネーションを実装しようとしています。
それが私の問題です:ページネーションブロックを作成すると、次のようになります:
結果は次のようになります(アクティブなページは2つです):
(http://i.stack.imgur.com/lcgUU.png)
Twitter Bootstrap ページネーション クラスでは、アクティブな "li" 要素にリンクが必要です。smarty paginateでアクティブな「li」にリンクを挿入するにはどうすればよいですか?
symfony - ユーザープラグインへの呼び出しをトリガーせずにSmartyテンプレートを解析します
Asseticをサポートするために(Symfony2)SmartyBundle拡張機能を書いています。
スタイルシート機能をサポートするために、次のブロックプラグインを登録しましたstylesheets
:
このプラグインは適切に呼び出され、Symfony/asseticキャッシュが作成されるとすべてが期待どおりに機能します。
この問題は、Symfonyキャッシュが空で、Asseticがすべてのテンプレートファイルリソースをロードし、スタイルシートタグで見つかったトークンを使用してPHP配列を取得するようにテンプレートエンジンに要求した場合に発生します。配列を取得するために呼び出されるクラスはですSmartyFormulaLoader
。
$smarty->fetch()
メソッドでが呼び出されると、load()
例外がスローされますSymfony\Component\Config\Exception\FileLoaderImportCircularReferenceException: Circular reference detected in "." ("." > ".")
。
これは、Smartyテンプレートが解析/コンパイルされ、stylesheets
プラグインが再度呼び出されたことが原因です。
そこで、Smartyが(スタイルシートプラグインを呼び出さずに)ブロック関数トークンを抽出するテンプレートパーサーを提供して、Asseticにフィードできるかどうかを尋ねています。または、これを解決するために私が見逃している可能性のある他の解決策。
ありがとう。
smarty - Smarty: 動的に生成された配列にアクセスしますか?
私の PHP コードは、次の方法でアクセスできる Smarty 変数に配列を割り当てます。
123
、などの456
配列内のインデックスは動的に割り当てられます (データベースを含むいくつかのロジックに基づいて)。123
それらは動的に割り当てられるため、テンプレート ファイルに などをそのまま入れることはできません。ただし、これらの数値は別の Smarty 変数にあります。たとえば、次のようになります。
,$bar.id
の代わりにこれを使用するにはどうすればよいですか?123
456
smarty - Smarty: 文字列変数に括弧が含まれています
次のような Smarty 変数に割り当てられた連想配列があります。
テンプレート ファイルでは、どのようにアクセスすればよいhello
ですか? これは失敗します:
括弧は配列の一部にアクセスしようとしていることを意味するため、失敗したと思います。この場合、私はそうではありません。括弧は変数名の一部です。考え?