テーマ開発者モジュールをテーマに使用しています。モジュールはかなり良いですが、それでも非常にバグが多いです。バグの少ない代替手段はありますか?
あんまり。
Drupal 7.33リリース 以降、代替テンプレートのサポートとsettings.php
に設定を追加することで、Drupal(core)にリストされているテーマ関数の代替案が簡単にサポートされます。
テンプレートとテーマ関数に「theme_hook_original」変数を追加し、オプションのサイト全体のテーマデバッグモードを追加して、ページのHTMLのコンテキスト情報をテーマ開発者に提供します。テーマのデバッグモードは、Twig in Drupal 8で使用されるものに基づいており、「theme_debug」変数をTRUE(API追加)に設定することでアクセスできます) 。
したがって、settings.phpで次のように設定します。
$conf['theme_debug'] = TRUE;
次に、ページのソースを表示すると、現在のノードの関数とテンプレートの提案をリストしたコメントが<!-- THEME DEBUG -->
としてHTMLに表示されます。
/admin/structure/views
の出力例:
<!-- THEME DEBUG -->
<!-- CALL: theme('html') -->
<!-- FILE NAME SUGGESTIONS:
* html--admin--structure--views.tpl.php
* html--admin--structure.tpl.php
* html--admin.tpl.php
x html.tpl.php
-->
... lots of HTML ...
<!-- THEME DEBUG -->
<!-- CALL: theme('region') -->
<!-- FILE NAME SUGGESTIONS:
* region--page-top.tpl.php
x region.tpl.php
-->
<!-- THEME DEBUG -->
<!-- CALL: theme('toolbar') -->
<!-- BEGIN OUTPUT from 'modules/toolbar/toolbar.tpl.php' -->
これはDrupal 8 Twigに組み込まれたヘルパー機能Drupal 8のバックポートです(devel_themeにDrupal 8リリース)。