ビューの「グローバル:カスタムテキスト」フィールドにfield_idを設定します


7

複数の「グローバル:カスタムテキスト」フィールドのあるビューがあります。これらは実際にはプレースホルダーとして機能しているだけです。それぞれにフィールドテンプレートファイルを作成します。これは、ビューでこれらのフィールドに遭遇したときに基本的にカスタムhtml / phpを配置します。

ほとんどすべてが適切に機能しており...例外はありますが、Drupalは自動的に ' なし '、 ' なし_1 'などのIDをグローバルカスタムテキストフィールドに与えます。したがって、これらのグローバルテキストフィールドが複数あり、それぞれに個別のフィールドテンプレートを作成したい場合、問題が発生します。

テンプレートファイルにviews-views-field-nothing.tpl.phpなどの名前を付ける必要があります。これらのフィールドテンプレートをサイト全体で再利用したいので、これは望ましくありません。私のビューでは、これらのグローバルフィールドの順序について心配する必要はありません。何もないと予想されるものは1番目であり、そのIDを取得し、何もないと予想されるものは、そのIDを取得します...

誰かが以前にこの問題に遭遇したことがありますか?ビューでグローバルカスタムテキストフィールドに独自のフィールドIDを設定できるかどうかのアイデアはありますか?これを実行するモジュールはありますか?まだ何も見つかりませんでした。

ご指導ありがとうございます!

psこれを行う理由は、ビューのフィールドから取り除かれるHTML(<fieldset>など)をビューに配置しようとしているため、テンプレートファイルで実行する必要があるためです。

回答:


3

まあ、難しい問題を解決する唯一の方法は、独自のモジュールを作成することです(または、私の場合のように、そのようなモジュールを既に作成している人と協力します)。

私は今、私がやろうとしていたことを達成するために、新しくローンチしたビューフィールドセットモジュールを使用しています!


いいですね、私はすぐにこのモジュールをテストするでしょう。いくつかのシナリオに適用できるようです。
Duncanmoo 2012

これは、Display Suiteが異なるディスプレイで解決するものに対するビュー固有のアプローチのようです。DSでは、ブロックやカスタムPHPであっても、カスタムの「フィールド」をディスプレイに追加できることに注意してください。
Capi Etheriel 2012

ありがとう、バラポント。あなたは良い点を作る。ビューを使用しているのは、公開されたフィルターを使用して「検索」タイプのインターフェースを実装しているためですが、DSも念頭に置いておくとよいでしょう。
Boriana Ditcheva

2

これが良い解決策かどうかはわかりませんが、これらのテンプレートファイルの提案で同じ問題に遭遇しました。私がしたことはそれを回避することでした:

  1. それぞれの[表示から除外]をオンにして、すべてのフィールドを非表示にします
  2. フィールドリストの最後に 'Global:Custom text'フィールドを1つ追加して、[fields]を必要なHTML構造に挿入します
  3. フィールドとラッパースタイルの設定を削除またはオーバーライドする

あなたのための解決策かもしれませんか?「グローバル:カスタムテキスト」フィールドのもう1つの置き換えは、views_phpフィールドを使用することです


ねえ、Duncanmoo、はい、あなたの言っていることを考えましたが、私のpsを見ると、<fieldset>タグが含まれているので、配置したいコードがビューのフィールドから取り除かれています...テンプレートを使用する必要がありました。ビューのphpフィールドはオプションの場合がありますが、サイト全体でこれを簡単に再利用することはできません。確かめます。提案の+1。ありがとう。
Boriana Ditcheva
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.