web-dev-qa-db-ja.com

PHPコードからビュータイプを知る方法はありますか?

PHPコードからビュータイプ(ページまたはブロック)を知る方法はありますか?

if (views type is block) {
  echo "This is a block view.";
}
elseif (views type is page) {
  echo "This is a page view.";
}
3
enjoylife

ビューで話していることの命名法はディスプレイハンドラーです。

_$view_オブジェクト(事実上すべてのViewsスコープにあるはずです)がある場合、ディスプレイハンドラーの現在のオブジェクトは_$view->display_handler_にあります。 get_class()を使用して名前を見つけることができます。

_get_class($view->display_handler);
_

次のようなものを返します

_views_plugin_display_page
_

これは、表示ハンドラーのマシン名です。ただし、条件文では、instanceof型演算子を使用できます。

_if ($view->display_handler instanceof views_plugin_display_page) {
  // ...
}
_
2
user7