Views の Node translation フィルタが機能しない。

Drupal の Internationalization モジュールを 6.x-1.3 へバージョンアップしたら、Viewページにすべての言語のノードが表示されるようになってしまった。サイトの構築 -> Views から該当するViewの編集ページを表示すると、フィルターの箇所に、「Error: handler for node > content_negotiation doesn't exist」と表示されてしまう。

Internationalization プロジェクトのサイトで調べてみると、同様の現象が報告されていて、どうやら、Views translation 6.x-1.3 の不具合らしく、includes/i18nviews.views.inc ファイルの該当箇所を以下のように変更することで改善できる。

function i18nviews_views_handlers() {
  return array(
    'info' => array(
      'path' => drupal_get_path('module', 'i18nviews') . '/includes',
    ),
    'handlers' => array(
      'content_negotiation_filter_handler' => array(
        'parent' => 'views_handler_filter'/*,
        'file' => 'includes/content_negotiation_filter_handler.inc'*/

      ),
    ),
  );
}

なお、修正後は、Views のキャッシュをクリアする必要がある。(サイトの構築 -> Views -> Tools -> Basic)

参考:Error: handler for node > content_negotiation doesn't exist

 

Trackback URL for this post:

http://www.hirojp.net/ja/trackback/83

コメント

I am pleased to see your

I am pleased to see your information is useful to me louis vuitton replica bag
louis vuitton replica handbags

Brill! Will find this usefull

Brill! Will find this usefull and will add it to my bloglist
replica louis vuitton handbags
replica handbags louis vuitton
louis vuitton replica