如何在地区避免无包装标签? -- regions 领域 和 theming 领域 drupal 相关 的问题

How to avoid no-wrapper tags on regions?


3
vote

问题

中文

如何确保所有地区都根据区域包裹.PL.php?

在zen的亚文中,我创建了自己的区域并将page.tpl.php文件修改为以下内容:

  <div #page>     <?php print render($page['header']); ?>     <?php print render($page['content']); ?>     <?php print render($page['footer']); ?> </div>   

一些区域从region.tpl.php获取一个区域包装器,其他人从no-wrapper.tpl.php(没有包装器)中获取代码。如何将所有地区接收包装器?

英文原文

How do I make sure ALL regions are wrapped according region.tpl.php?

In a subtheme of Zen I have created my own regions and modified the page.tpl.php file to something like the following:

<div #page>     <?php print render($page['header']); ?>     <?php print render($page['content']); ?>     <?php print render($page['footer']); ?> </div> 

Some of the regions get a region wrapper from region.tpl.php, others get the code from no-wrapper.tpl.php (no wrapper). How can have all regions receive a wrapper?

     

回答列表

1
 
vote

从代码看起来像zen在 zen_preprocess_region() 中添加了模板建议,但仅限于内容区域:

  elseif ($variables['region'] == 'content') {   // Allow a region-specific template to override Zen's region--no-wrapper.   array_unshift($variables['theme_hook_suggestions'], 'region__no_wrapper'); }   

如果您直接编辑ZEN主题(您不应该是:P)只需删除那些4行;如果您正在创建子主题,实现自己的区域预处理功能,请从zen复制代码,然后将这些行留出:

  function MYTHEME_preprocess_region(&$variables, $hook) {   // Sidebar regions get some extra classes and a common template suggestion.   if (strpos($variables['region'], 'sidebar_') === 0) {     $variables['classes_array'][] = 'column';     $variables['classes_array'][] = 'sidebar';     // Allow a region-specific template to override Zen's region--sidebar.     array_unshift($variables['theme_hook_suggestions'], 'region__sidebar');   } }   
 

From the code it looks like Zen adds that template suggestion in zen_preprocess_region(), but only to the content region:

elseif ($variables['region'] == 'content') {   // Allow a region-specific template to override Zen's region--no-wrapper.   array_unshift($variables['theme_hook_suggestions'], 'region__no_wrapper'); } 

If you're editing the Zen theme directly (which you shouldn't be :P) just remove those 4 lines; if you're creating a sub-theme, implement your own region preprocess function, copy the code from Zen's, and leave those lines out:

function MYTHEME_preprocess_region(&$variables, $hook) {   // Sidebar regions get some extra classes and a common template suggestion.   if (strpos($variables['region'], 'sidebar_') === 0) {     $variables['classes_array'][] = 'column';     $variables['classes_array'][] = 'sidebar';     // Allow a region-specific template to override Zen's region--sidebar.     array_unshift($variables['theme_hook_suggestions'], 'region__sidebar');   } } 
 
 
   
   
1
 
vote
vote
最佳答案
 

要避免区域内容块从接收块 - no-wrapper.tpl.php模板,转到子主题中的template.php和utquate或添加最终函数:

  function zen_expeditiedokter_preprocess_block(&$variables, $hook) {     if ($variables['block_html_id'] == 'block-system-main') {         $variables['theme_hook_suggestions'] = array_diff($variables['theme_hook_suggestions'], array('block__no_wrapper'));     } }   

这将使block.tpl.php模板到内容区域(无需编辑ZEN主主题),从而避免无包装。

 

To avoid region-content blocks from receiving the block--no-wrapper.tpl.php template, go to template.php in your sub-theme and unquote or add the final function:

function zen_expeditiedokter_preprocess_block(&$variables, $hook) {     if ($variables['block_html_id'] == 'block-system-main') {         $variables['theme_hook_suggestions'] = array_diff($variables['theme_hook_suggestions'], array('block__no_wrapper'));     } } 

This will give the block.tpl.php template to the content region (without editing the Zen main theme) and thus avoiding the no-wrapper.

 
 

相关问题

2  内容以外的区域中的编辑/查看选项卡  ( Edit view tab in region other than content ) 
我正在尝试设置两个与omega子主题一起使用的上下文。 3列上下文: 使用区域侧边栏第一,内容和侧边栏第二。内容是6列宽。侧边栏区域每个3列宽。这有效。 2列上下文 使用"内容第二" (9个COL。宽)和侧边栏第二(3个COL。宽)。 内容第二是添加到子主题中的信息文件中的附加区域。 区域[content_2] ...

-1  如何将用户控制链接放在我的网站的顶部区域(如stackexchange)?  ( How to place user control links in the top region of my website as in stackexch ) 
我想在我网站的右上地区有一个块,这几乎与笨拙的答案相似。匿名用户的登录/注册按钮以及用户登录时,他们的用户名(及其配置文件图片)将出现一个下拉菜单,使他们访问控制功能,如他们的个人资料页面,注销链接等。 我正在摆弄tpl文件,但没有任何展示。 谢谢 ...

2  Commerce Kickstart Demo:如何更改块主菜单和辅助菜单的区域?  ( Commerce kickstart demo how do i change the region for the blocks main menu and ) 
在商务kickstart demo 块主菜单和辅助菜单分配给菜单区域。 您可以在图像中看到: 但我转到/ admin / structs / block这些块被禁用。我的意思是它们不会被指定给菜单区域 这是以编程方式完成的吗?我需要将块移动到其他地区。我该怎么做? ...

4  如何使特定区域使用特定模板?  ( How to make a specific region use a specific template ) 
我目前正在zen子主题中使用Drupal 7项目。我的每一个地区都使用"Region.tpl.php" 作为HTML / PHP模板。我刚刚创建了一个名为"foo" 的新区域。该区域需要不同的HTML / PHP而不是其他地区。 如何使drupal使用我的自定义模板"region - foo.tpl.php" ...

3  在Node中的注释上方插入块  ( Insert block above comments in node ) 
如何在高于注释的节点中显示块。我尝试过的是: 创建区域 - regions[above_comments] = Above comments 在 template.php 之后,我已将其添加到 THEME_preprocess_node $variables['above_comments'] = the...

2  如何使用右键和MENU_LINK取决于区域  ( How to use the right menu tree and menu link depending on region ) 
如何为特定区域具有特定的menu_tree和Menu_Link? 示例: 左区域将有自己的 menu_tree menu_link 它将是与右侧区域不同。 如何实现这一目标? 我是否需要构建自定义模块? 如果我使用 template_preprocess_region() ,如何调用 menu_tree 和 me...

1  放置在内容区域中的块出现在错误的位置  ( Blocks placed in content region appear in wrong positions ) 
是有什么我需要了解Comper Comment Region中的Drupal处理块的方式?我有一个非常裸的骨头omega象形物,单一页面升级到前面的内容区域中的两个块,而在主要内容'块'之后定位 - 但它们在主要内容之前出现。 ...

0  API在区域中显示块  ( Api to display block in regions ) 
我想通过代码在区域中显示块,以同样的方式可以使用上下文(因此:如果我在"文章类型" 的node_view上"显示块" 用户登录"区域" sidebar first"例如)。 我知道如何加载和显示块,但我不知道哪个是制作它的最佳位置。 有我在区域模板中添加渲染函数? 或者我使用主题功能来执行此操作吗? ...

0  站点徽标,实用菜单和搜索框。模板或所有CSS?  ( Site logo utility menu and search box template or all css ) 
在标题中,我想在左边的左侧和右侧的搜索框中有一个网站标识。 我应该只需将实用程序菜单插入块,并通过CSS将其余的样式?或者我应该首先向页面模板添加区域或任何东西,然后使用CSS的样式? ...

1  如何减少特定页面的侧栏的宽度? [关闭]  ( How to decrease the width of the sidebar for a specific page ) 
很难讲述这里被问到的内容。这个问题含糊不清,模糊,不完整,过于广泛的或修辞,不能以目前的形式合理地回答。有关帮助澄清此问题,以便可以重新开放,访问Help Center 。 ...

2  使用显示套件将内容字段移动到不同的主题区域  ( Moving content fields to different theme regions with display suite ) 
我正在尝试在不同主题区域中输出节点字段,特别是节点参考字段到我的主题的右侧栏区域。我已经阅读了这一点,可以使用显示套件和显示套件额外的模块,但我只看到显示套房区域(左,右......),似乎没有意识到我的主题区域。我怎样才能完成这个? ...

0  面板 - 风格区域成为下降/可扩展菜单  ( Panels style region to become a drop down expandable menu ) 
请参阅: http://drupal.org/project/tableofcontents 我正在使用面板,并希望平整面板区域,所以我能够像上面的TOC模块一样隐藏/显示。 我看过模块的Drupal下载,但没有工作方式。 任何建议?谢谢你的时间! ...

0  欧米茄主题区域消失  ( Omega theme region disappear ) 
我已经创建了一个omega子主题。在标题第一区域我已经放置了一个幻灯片横幅的视图,该横幅正常,但突然间从匿名用户中消失了。我试图在该地区放入一些其他块,但不是用于匿名用户的东西,但是当我登录它时,它显示了该区域的横幅和块。 任何想法??? ...

2  地区已经消失了  ( Regions are gone ) 
我使用 omega 主题,但每当我尝试编辑我的地区时,他们都完全是空... 正如您在图像上看到的那样,没有可用的区域,虽然有内容放在它们内部和前端,但它看起来都很好。 我多次冲了现金和ran cron,但没有运气... ...

0  为单个页面加载创建两次块  ( Blocks created twice for a single page load ) 
在模板文件中我正在使用此代码 $blocks= block_get_blocks_by_region('revel_card_dashboard'); 抓住区域的块以在模板的特定部分呈现。这导致区域创建了两次。 检查堆栈迹线首次创建块是由drupal核心。 2 => array ( '...

1  如何在不同地区展示字段?  ( How to show fields in different regions ) 
我已经尝试了 Display Suite module ,它只配备每个显示套件布局模板(额外的模块也没有改变这个),这基本上只会改变身体/内容区域......制作可用的主题区域是不可能的。无论如何,它仍然会有点矫枉过正。 所有我想要做的是在任何可用的内容类型中创建一个字段。没有块。没有观点。 就像 display s...

4  如何在视图中打印一个区域.tpl.php?  ( How to print a region in views tpl php ) 
我有一个视图 - 视图 - 未格式化 - ViewsName - 附件.tpl.php。我想在这个文件中打印区域。 我添加了 getConfig4 getConfig5 。 并添加 getConfig6 getConfig7 但是没有打印。 有什么问题?如何在 getConfig8中打印区...

0  当侧栏有内容时更改内容区域宽度?  ( Change content region width when sidebar has content ) 
你好,我有我的感受(希望)一个简单的问题来解决。基本上我有我的地区定义,这很好,但我有我的侧栏,我想在内容区域的右侧显示。如果侧边栏已阻止"内容" 区域应增益为调整宽度以允许侧栏显示的类,如果侧栏中没有内容,则内容区域应以全宽显示。 在页面模板中,我有这个到目前为止 <?php if ($page['sideba...

1  为什么不是主菜单和辅助菜单只是区域?  ( Why arent the main menu and the secondary menu simply regions ) 
我注意到您可以使用块的任何地方(其中主题提供区域)将内容放在任何地方。 这变得非常直,是有意义的。但后来我试图找到"我的帐户" 和" logout " 链接来自。在搜索一些搜索后,我发现它们是在菜单中配置的 - &gt;设置管理页面。 现在我现在阅读了关于次要链接的源的误导性帮助文本的争议,因此在Drupal 7中显...

2  在用户登录时尝试使自定义区域消失,然后在用户注销时重新出现  ( Trying to make a custom region disappear upon user login then reappear when use ) 
我看过各地寻找我的问题,但找不到一个。我的目标是在用户登录时崩溃/强制我的网站上的自定义区域消失,然后在用户注销时会重新出现。或者,如果无法折叠区域,则用空区域替换该区域,通过CSS,我已经设计为以零高度显示。基本上,我正在尝试让自定义区域在用户登录时消失,然后使其在用户注销时重新出现。 此原因是我将最后的触摸在我的...




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


Licensed under cc by-sa 3.0 with attribution required.