カスタムブロックのテーマ設定についてはたくさんありますが、ビューによって作成されたブロックについてはどうですか?
私のビューブロックのID:block-views-posts-listing-block、
テンプレートファイルに名前を付ける方法をいろいろ試します。例:block--block--views-posts-listing-block.tpl.phpですが、正しいファイル名が見つかりません。
ビューを編集します。ブロックの詳細の[詳細]設定で、["Theme: Information"
]をクリックします。テンプレートファイルのオプション一覧が表示されます。
たとえば、ブロックに「投稿リスト」という名前が付いている場合は、「テーマ情報」オプションでリストされている可能な名前を確認します。
* Display output: views-view.tpl.php, views-view--posts-listing.tpl.php, views-view--default.tpl.php, views-view--block.tpl.php, views-view--posts-listing--block.tpl.php
* Style output: views-view-unformatted.tpl.php, views-view-unformatted--posts-listing.tpl.php, views-view-unformatted--default.tpl.php, views-view-unformatted--block.tpl.php, views-view-unformatted--posts-listing--block.tpl.php
* Row style output: views-view-fields.tpl.php, views-view-fields--posts-listing.tpl.php, views-view-fields--default.tpl.php, views-view-fields--block.tpl.php, views-view-fields--posts-listing--block.tpl.php
* Field Content: Title (ID: title): views-view-field.tpl.php, views-view-field--title.tpl.php, views-view-field--posts-listing.tpl.php, views-view-field--posts-listing--title.tpl.php, views-view-field--block.tpl.php, views-view-field--block--title.tpl.php, views-view-field--posts-listing--block.tpl.php, views-view-field--posts-listing--block--title.tpl.php
例:ブロックの名前は投稿リストで、スタイルはunformattedの場合、「テーマ情報」は名前views-view-unformatted--posts-listing--block.tpl.php
を提案します(これはいくつかの名前の1つにすぎません)。元のviews-view-unformatted.tpl.php
テンプレートファイル(/ modules/views/themeにあります)を現在のテーマディレクトリにコピーし、このファイルの名前を:views-view-unformatted--posts-listing--block.tpl.php
という名前に変更できます。次に、テンプレートファイル内で変更を加えます。このテンプレートで必要な変更ができない場合は、必要に応じて他のテンプレートを探してください。
最後に、新しいテンプレートを追加する場合は、テンプレートファイルリストを再スキャンします。
重要!テンプレートファイルを追加、削除、または名前変更する場合は、Drupalに変更を認識させ、システム上のファイルを再スキャンさせる必要があります。[テンプレートファイルの再スキャン]ボタンをクリックすると、Drupalのテーマレジストリによって、この再スキャンプロセスがトリガーされます。強調表示されたテンプレート([テンプレートファイルの再スキャン]ボタンの上のテンプレートリストで)は、システムの新しい状態を反映します。
また、テーマ開発者モジュール http://drupal.org/project/devel_themer Oswaldによって提案されたテンプレートは、テンプレートを検出して、基準に従って特定の要素を変更するのに役立ちます。このモジュールを本番環境で有効にすることはお勧めしません(私の場合、テスト環境でモジュールを無効にしても、ビューと競合しているようですが、必要なときに非常に役立ちました)。
テーマ開発者(別名devel_themer)によると、D7で回答を求める人のために、次の規則を使用してビューのブロックのtplオーバーライドを作成できます。
block--views- {ビューのmachine_name} -block
したがって、例では次のようになります
block--views-post-listing-block.tpl.php
スペースなし(すべてをインラインにするためにこれを適切に編集できませんでした。
30時間の終わりにtpl名を変更すると、これが私の最終的な結論です。
block--views--[view-name]-[display-name].tpl.php
[view-name]-[display-name]の部分は、noTxtが言ったように、またはビューのID名とビューディスプレイのID名である '-'を使用して結合できます。末尾の-blockが正しくありません。
上記のファイル名のパターンは、ビュー名+表示名が特定の文字数を超えない限り機能します。私はこれに捕まり、...block.tpl.php
で終わるテンプレートファイルが機能し、次の表示...block-1.tpl.php
が機能しなかった理由を見つけることができませんでした。
名前が長すぎる場合、Viewsはマシン名をMD5ハッシュに置き換えます。使用するテンプレート名を確認したい場合は、settings.phpに$conf['theme_debug'] = TRUE;
を追加して、ページのソースを確認してください。 block--views--d131dd02c5e6eec4
....のようなものが見つかった場合は、ビューのマシン名を短くすることをお勧めします(そうすることで管理できれば...人間が読める名前ではありません)。または、そのばかげた名前のテンプレートファイルを使用する必要があります。
も参照
Views Blockのマシン名は「ハッシュ化」されています(?)
そして
block--views--[view-name]-[display-name].tpl.php
をblock--views--[view-name]-[machinename].tpl.php
に変更する必要があります。
あなたはそれが他に書かれているあなたのビューの高度なセクションからマシン名を見つけるでしょう
D7> = 7.33を使用している場合、theme_suggestionをHTMLコメントとしてページに直接表示できます。
settings.php
$conf['theme_debug'] = TRUE;
これが完全なドキュメントです https://www.drupal.org/docs/7/theming/overriding-themable-output/working-with-template-suggestions
パネルペイン内のブロックの場合、noTxtなどで提供されるソリューションが機能しません。構文は(アンダースコアなし!)になります。
panels-pane-block--views-[view-name]-[display-machine-name].tpl.php
この例外的なテーマのオーバーライドのケースを理解するために$ conf ['theme_debug']設定を提供してくれたuser3074436に感謝
このページをチェックしてください https://www.drupal.org/node/1089656 、およびビューが使用する下線に関する情報:
また、ビューのもう1つの例として、ビュー名が「front_news」で、表示IDが「block_1」のビューによって作成されたブロックがある場合、テーマフックの提案は次のようになります:block--views--front-news-block-1。 tpl.php(表示IDまたはビュー名にアンダースコアがある場合-単一のダッシュに変換する必要があります)