1

オプションの CCK フィールド「field_source」を持つニュース コンテンツ タイプがあります。これは、Yahoo ニュースなどの外部ニュース アイテムを対象としています。ビューには、ノード タイトルを field_source にリンクするディスプレイがあります。コンテンツ作成者が field_source を提供しない場合は、デフォルトで node->path にしたいと考えています。

これを実現するために、前処理関数を作成し、それを template.php ファイルに追加しました。問題は、ビューが更新された値を使用していないことです。関数を別の場所に配置する必要がありますか?

function content_preprocess_content_field(&$vars) {
  if ($vars['field']['field_name'] == 'field_source') {
    $source = $vars['items'][0]['url'];
    $node = $vars['element']['items'][0]['#node'];
    if (empty($source)) {
      $vars['items'][0]['url'] = $node->path;                                                                                                 } 
  } 
}

ティア、アーロン

4

0 に答える 0