有没有办法了解从PHP代码知道视图类型? -- 7 领域 和 views 领域 drupal 相关 的问题

Is there a way to know the view type from PHP code?


3
vote

问题

中文

有没有办法了解从PHP代码知道视图类型(页面或块)?

  if (views type is block) {   echo "This is a block view."; } elseif (views type is page) {   echo "This is a page view."; }   
英文原文

Is there a way to know the view type (page or block) from PHP code?

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

回答列表

2
 
vote
vote
最佳答案
 

您在视图中讨论的命名是显示处理程序

如果您有 $view 对象(几乎所有的视图范围),您可以在 $view->display_handler 上找到显示处理程序的当前对象。您可以使用 get_class()

找到名称
  get_class($view->display_handler);   

将返回像

的东西
  views_plugin_display_page   

是显示处理程序的机器名称。但是,在条件下,您可以使用 instanceof 类型运算符:

  if ($view->display_handler instanceof views_plugin_display_page) {   // ... }   
 

The nomenclature for what you're talking about in Views is the display handler.

If you have the $view object (which you should in virtually all Views scopes), you can find the current object for the display handler at $view->display_handler. You can find the name by using get_class():

get_class($view->display_handler); 

will return something like

views_plugin_display_page 

which is the machine name of the display handler. But in conditionals, you can just use the instanceof type operator:

if ($view->display_handler instanceof views_plugin_display_page) {   // ... } 
 
 

相关问题

1  如何在Drupal 7中删除旧的民意调查/结果?  ( How can i remove old polls results in drupal 7 ) 
如何将链接删除到旧民意调查并导致Drupal 7?我解除匿名用户的视图结果,但他们仍然可以查看结果。我想删除旧民意调查和轮询结果的链接。是否有可能这样做?如果答案是肯定的,则我应该添加哪个代码到template.php删除这些链接? ...

12  意见3无法识别声明的处理程序。为什么不?  ( Views 3 doesnt recognize a declared handler why not ) 
在模块/地址/地址菲尔德.module我有: /** * Implements hook_views_api(). */ function addressfield_views_api() { return array( 'api' => 3, 'path' => drupal_get_p...

4  删除文件域值时如何保留底层文件  ( How to keep underlying file when deleting a filefield value ) 
我的内容类型与文件域(特别是图像)。当删除其中一个值时,Drupal也删除了底层文件(只要没有其他节点引用相同的文件)。 我不希望删除底层文件,我希望它们保留在文件系统中。是否有任何钩子或其他技术,我可以用来确保删除其文件场值后仍然存在? ...

3  单个文档,用于下载的多个文件型:如何管理?  ( Single document multiple filetypes for download how to manage ) 
我想将多个文档上传/附加到书节点。每个文档都将以多种文件格式提供,例如: 报告2010.pdf 报告2011.rtf 报告2011.doc 协议11.pdf 协议11.rtf 协议11.doc 鉴于此,为了: 提供了一个明智的上传界面(如filefield),允许上传无限数量的文件。 呈现这些文件以...

4  将标志链接转换为复选框  ( Convert a flags link into a checkbox ) 
是否有一种方法可以转换标志在视图中复选框中的链接?我尝试了标志形式模块,但它没有工作(至少不是在视图中)。我介绍了标志在显示类型功能请求中添加复选框。讨论点使用CSS,JavaScript或黑客标志模板文件。还有其他方法吗? 我对使用JavaScript做到这一点不利,但我很少了解它。 ...

10  如何删除“用户登录”块?  ( How do you remove the user login block ) 
我知道这是一个简单的问题,但我已经搜索了太久了。 我只想删除用户登录框,以便所有访问网站,Apart管理员访问权限,将是匿名的。我们不希望用户在系统上创建帐户。 ...

1  字段定义的权限  ( Permissions defined by fields ) 
我有一些具有状态字段的内容。我想允许用户使用相同状态删除此内容。 我可以在drupal中实现这一点吗? 我可以用php代码实现它吗? ...

2  Drupal作为饲料聚合器  ( Drupal as feed aggregator ) 
我有兴趣在我的Drupal网站上用内置饲料聚合器聚合帖子。 饲料聚合器可以基于良好的类别进行不同的馈送;我的问题是,当用户创建一个帖子时,它们不能同时分配一个类别。他们稍后必须通过Feed聚合器手动查找帖子并设置类别。 有没有办法允许用户在创建帖子时分配类别? ...

1  多种图像样式  ( Multiple image styles ) 
有没有办法拍摄一个图像字段的多种风格图像? 我想同时使用150×150,180×180和300×300的风格。 ...

1  如何创建带有背景图像的菜单列表项?  ( How to create a menu with background images for list items ) 
如何制作菜单中每个 <li> 元素的不同背景图像的菜单? ...

4  填充数据后更改字段选项  ( Change field options after form has been filled with data ) 
在创建我的表单时,我还没有意识到默认核心描述字段的配置。我不想要一个摘要领域,但在过去设置我的形式时,我没有付出很多关注。现在,当我尝试更改字段选项以删除摘要字段时,我收到消息"数据库中存在此字段的数据。现场设置不再更改。" 。是否有可能覆盖这种限制并强制变化? ...

2  将GEO位置内容添加到节点  ( Adding geo location content to node ) 
我正在寻找一个维护的模块,允许将geo位置添加到自定义内容类型的节点。我正在寻找与Google地图API集成的东西,以便使用地址,zip或名称来查询位置。 ...

6  发送电子邮件附件  ( Send email with attachment ) 
我想用 workbench administration0 使用 workbench administration1 发送附件。您是否对我应该使用哪个参数的想法? 变量 workbench administration2 帮助,以某种方式? ...

1  如何在我的主题中覆盖变量?  ( How do i overwrite the variables in my theme ) 
function rate_preprocess_test(&$variables) { extract($variables); $buttons = array(); foreach ($links as $link) { $button = theme('rate', $link['te...

4  如何截断字符串?  ( How do i truncate strings ) 
例如,我需要截断以下文本。 Drupal是免费的,灵活,强大的,不断提高来自世界各地的数十万热情的人。加入我们! 我已经使用了 drupal_substr() ,但结果可能是"ropal是免费的,flexi" 。 如何避免截断单词? ...

6  在D7中格式化数字  ( Formatting numbers in d7 ) 
我在字段中有一个序列化对象。我现在需要输出浮动值。由于该网站有2种语言(德语/英语),我现在需要根据当前语言格式化浮动号码。 $value = 123456789.01; // Language = english print the_format_function($value); # => 123456789...

4  默认搜索最多的关键字?  ( The most searched keyword of the default search ) 
有没有办法,或模块,获得网站的最多搜索的关键字的默认搜索? ...

8  使用自定义视图进行分类术语页面  ( Using a custom view for a taxonomy term page ) 
使用Drupal 7和视图7.x-3.0-beta3,有一个分类页面使用自定义视图的最佳方法是什么? 例如,在路径自动中,我有规则,指向URL别名国家/英格兰朝向分类/术语/ 44。 当用户访问国家/英格兰时,我想显示使用视图创建的页面,而不是默认分类页面。 我正在使用分类菜单填充菜单,在Drupal 7中尚未支持自...

2  如何限制用户查看自己的自定义内容类型?  ( How to restrict users to view their own custom content type ) 
我正在开发一个名为'serviceentry'的自定义模块,它也公开了一个名为'serviceentry'的自定义内容类型。 我还将自定义权限公开为: function serviceentry_permission() { return array( 'view own...

4  匿名用户表单提交  ( Anonymous user form submission ) 
我有一个在做基本注册之后的情况,用户被重定向到他需要填充一个小形式的页面。 我的目标是实现 hook_user_insert() 和 hook_menu() 要做这样的事情 function registration_user_insert(&$edit, $account, $category){ drup...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.