質問: drupal 7-分類ページのノードの出力を抑制します モジュールをインストールせずに(つまり、template.phpにのみ)、分類ページのノードの出力を抑制する方法はありますか?分類用語でタグ付けされたノードは、「分類インデックスページ」(例:yoursite.com/taxonomy/term/[id])に表示されます。drupal 7の新機能)には、分類インデックスページにフィールドをアタッチできます。ただし、ビューを使用して分類ページを上書きしようとすると(たとえば、ノードの表示方法を制御するため)、 、分類インデックスページのフィールドは表示されません。したがって、taxonomy viewページをtaxonomy indexページのブロックとして配置しました。このようにして、ノードの表示方法を制御し、分類インデックスページのフィールドを引き続き使用できます。このため、分類ページはまだノードを出力しています。ノードのティーザーを非表示に設定することで非表示にできますが、それでもノードがロードされます(したがって、ノードが表示されていなくても、ノードに接続されているcss/jqueryが読み込まれます)。ノードが表示されないようにするには、理想的にはtemplate.php内からノードを抑制できますか?
回答: template.phpでは実質的に何でもできますが、それはお勧めできません。 cmsを使用するポイントは、データ、動作、および外観を分離することです。 template.phpファイルはテーマレイヤーの一部であり、サイトの視覚スタイルを調整するために使用する必要があります。サイトの動作を調整する場合(この場合は、特定のリストに表示される項目を制御します)、動作を変更する必要があるため、モジュールをインストールして構成します。コンテンツのカスタムリストを作成する場合は、 views モジュールがまさに必要です。あなたの場合(私が正しく理解している場合)、分類用語のフィールドがその用語でタグ付けされたノードのリストの上に表示されるようにする必要があります。 urlから用語idを取得し、必要な情報を表示するビューブロックを作成することにより、ビューでそれを再作成できます。