2

node-mynode.tpl.php というカスタマイズされたテンプレートを作成しました mynode タイプのノードが要求されるたびに、node-mynode.tpl.php が自動的に使用されます。

ただし、この場合、ユーザーは特定のメニュー ブロックを見たいと考えています。

質問: 特定のコンテンツ タイプにブロックを割り当てるにはどうすればよいですか?

ヒント: Pathauto で URL エイリアスを調べ始めました。1 つの解決策がこの方向にあるのではないかと思います。

4

3 に答える 3

7

Drupal 6 では、ブロックの表示設定を構成できます。管理者バックエンドのブロックの横にある「構成」リンクをクリックして、次の手順に従います -

1) [ページ固有の表示設定] タブで、[次の PHP コードが TRUE を返す場合に表示する (PHP モード、エキスパートのみ)] オプションを選択します。

2) 現在のノードのノード タイプをチェックし、それに応じて TRUE を返す次の PHP コードを入力します。

<?php 
   if( arg(0) != 'node' || !is_numeric(arg(1)) )
   { return FALSE;
   }

   //load a fully-populated Drupal node object
   $temp_node = node_load(arg(1));

   if( $temp_node->type == 'mynode' )       //check the node type
   {   return TRUE;    //display block
   }
?>

これはうまくいくはずです....

于 2010-06-12T20:12:33.580 に答える
3

コンテキストモジュールを使用できます

于 2010-09-16T17:51:25.503 に答える
1

すべてのmynodeタイプ ノードに で始まる自動エイリアスを付与し/mynode、ブロックのページ固有の表示設定を使用して、 で始まるページにのみ表示し/mynode/*ます。

于 2010-04-20T20:49:58.137 に答える