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. 関連モジュール タイトル
PHP 8.9.x drush drush sql:cli < が機能しない場合の対処
フォーム 8.9.x Views Views exposed filterのフォームに#default_valueを仕込む方法
テーマ 8.9.x スマホに向いたテーマについて
アップデート 8.9.x composer patch patch を composer に 組み込む方法
PHP-FPM 8.9.x PHP PHP-FPM 環境で .htaccess に php_value を 書いてもダメ
サイトの構築 8.9.x Webform drupalを使用した登録、一覧表示の方法について
アップデート 8.9.x Composer update Composer で drupal/core-8.9.7 に更新できなくなった場合の処置
サイトの構築 7.59 Drupal.ajax drupal 7 で Uncaught TypeError: Drupal.ajax is undefined となったときの対応方法
Proxy 7.59 Proxy Apache settings.php リバースプロキシ(Apache)+バックグランドWeb(Drupal 7 )でログインセッションを維持する方法
リバースプロキシ 8.9.x mod_proxy mod_proxy_http mod_ssl Apache2.4 から httpsサーバーへリバースプロキシする方法
コンテンツの作成 8.9.x node ノード保存時の前回値の参照方法
サイト情報 8.9.x api Drupal::request() メモ
テーマ 8.9.x Twig Twig で 月末日を算出する方法
SESSION 8.9.x api $_SESION操作のAPI
フォーム 8.9.x api GET/POSTされた情報を得る方法
テーマ 8.9.x patch パッチ 開発環境のファイル変更を本番環境にパッチでデプロイする方法(画像含まず)
コンテンツの作成 8.9.x vim nkf ファイルのエンコーディングを確認、変更する方法
サイトの環境設定 7.59 さくらのレンタルサーバー php Options さくらのレンタルサーバーで パブリック/プライベートディレクトリにファイルが書き込まれないとき
ユーザの管理 8.9.x user pass drupal 8 で 管理者(uid=1)パスワードがわからなくなったとき 新しいパスワードを設定する方法
ユーザの管理 7.59 user pass drupal 7 で 管理者(uid=1)パスワードがわからなくなったとき 新しいパスワードを設定する方法

ページ