Pagerが表示されなくなった

カテゴリ アップデート コアバージョン 7.28 関連モジュール Views

Viewsモジュールのセキュリティアップデート(3.7→3.8)がでたので、アップデートしたら一部のViewsのPagerが表示されなくなりました。
 
原因と対策を教えてください。

コメント

ユーザー actbrain の写真

当不具合は弊社も確認しています。
 
 
「一部のViews Pager」とは以下の条件にマッチしている場合に限るようです。
 
1.フォーマット:を「テーブル」または「グリッド」にしている。
2.フィールド:内で「Global: PHP」を利用している。
3.ページャーを利用している。
 
 
現状、パッチが出ていないようなので、利用側で対策しなければならないようです。
サイトにより、以下の何れかの対策なります。

1.Views3.8への(セキュリティ)アップデートを止めておく(クライアントが了承しない場合多し)
2.フォーマット:を「テーブル」、「グリッド」以外にして、表示:を「フィールド」以外にする(※1)
3.フィールド:内での「Global: PHP」を止め、他の方法(※2)に置き換える。
4.フィールドのままで「Global:PHP」を止める(※3)

※1)表示:を「フィールド」以外にする:
 従来、フィールドで表示していた内容をテンプレートなどに置き換える方法です。
 手間はかかりますが、正当派です。
※2)他の方法:
 Views Field View(https://drupal.org/project/views_field_view)を使い、PHPで記述していた部分を子Viewsに託します。
 リスクが少ない半面、一回分クエリが増えるので、パフォーマンスが落ちるかもしれません。
※3)「Global:PHP」を止める:
 Viewsのテンプレートをオーバーライドし、テーマ内にPHPを挿入する。
 きれいではありませんが、修正量/パフォーマンスとも有利です。

ページ

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ Core Ver. 関連モジュール タイトル
CSV Download 7.34 Views Excel Export Drupal7:Viewsで表示した内容をCSVダウンロード
アップデート 7.34 Core 簡単にCoreのセキュリティアップデートがしたい
表示 7.34 Views Infinite Scroll Facebookページのようにスクロールするとコンテンツが追加されるようなコントロール
ニュースレター 7.34 Simple news Simplenewsで追加顧客(リスト)だけにニュースレターを配信する方法
パフォーマンス 7.34 Server お金をかけないで冗長化するには
token 7.34 token オリジナルモジュールからtokenを提供する方法を教えて下さい。
Commerce 7.34 Commerce kickstart, Commerce file Commerceモジュール利用時のダウンロード製品登録方法
Drupal Commerce 7.34 Commerce order Drupal Commerce:カート内や購入手続きページ内の「Order total」が翻訳できない
Drupal Commerce 7.34 Commerce profile Drupal Commerceの請求情報、配送情報の住所を日本的(郵便番号、都道府県、市区町村、住所、、、)
アップデート 7.34 Distribution(Commerce Kickstart) drushでcommerce_kickstartのアップデートに失敗する
Database 7.34 PHP データベースクエリ(SELECT)時のSQL関数
コンテンツの作成 7.26 Form Ajax 入力フォームで#ajax使用時、#default_valueを書き換えても反映しない
サイトの構築 7.26 Field Views フォーム選択肢(プルダウンやチェックボックス、ラジオボタン)のカスタマイズ方法
表示 7.26 Views ページ内に2つ目Viewsブロックを設置するときPagerが連動してしまう
フォーム 7.34 Webform 動的なフォーム(webform)
コンテンツの作成 7.26 CKEditor Views Viewsでティザーを一覧するとページのレイアウトが崩れることがある
コンテンツの作成 7.34 CCK ノード入力フォームへパラメータを渡す
Messages 7.34 Disable messages 標準(コア)が表示する特定のメッセージ非表示にしたい
コンテンツの作成 7.34 ajax 標準のajaxフォーム(複数値:値の数=無制限)の制御l方法
Calendar 7.34 Calendar CalendarモジュールとGoogleカレンダーを同期するには

ページ