Questions tagged «theming»

将其用于有关渲染或修改模块/主题产生的HTML标记的问题。

2
在Google图表中显示网络表单结果数据
我正在尝试将Webform结果显示为Google Charts。我通过在主题的template.php文件上覆盖theme_webform_results_analysis()并使用Chart模块在主题层上进行此操作。Drupal 6.22,Webform 6.x-3.11。 Webform分析页面通常在表中显示数据,因此我试图拆分该表的数组,以将内容传递到Chart API中。 编辑:我想出了如何使用var_dump,发现更好的方法可能是分别进入$ row_data和$ questions数组(而不是使用我在此问题的第一个版本中获得的$ rows数组,两个数组的混搭)。 编辑#2:我想我已经找到了如何获取原始$ questions和$ row_data数组的每一部分的方法(请参见下文-其他foreach中的foreach)。所以现在我需要将这些片段放入适当的数组中(每个问题1个),并找到一种遍历所有这些片段的方法。 这是我在template.php中得到的: /** * Output the content of the Analysis page. * @see webform_results_analysis() */ function mytheme_webform_results_analysis($node, $data, $sids = array(), $analysis_component = NULL) { foreach ($data as $cid => $row_data) { if (is_array($row_data)) { // get the …
11 theming  6  webforms  charts 

6
将内容字段分成不同的区域
我的情况如下:我的内容类型为Seminar,具有字段A,B和C。我的区域为Header,Footer,Content和Sidebar Left。我希望在“研讨会”中的某些字段显示在“内容”区域中,但也要在“边栏左侧”区域中显示。 我该怎么做呢?抱歉,如果以前已经回答过。我是一名开发人员,毫不犹豫地研究了钩子和预处理器功能。我已经安装了Views模块,但是从未使用过(如果您不知道:P,这是我的第一个Drupal网站)。 干杯。 编辑:这是为Drupal 7。
11 views  theming  regions  nodes 

4
特定自定义内容类型条目的候选页面模板文件名
我正在Drupal 7网站上工作。我为作品创建了自定义内容类型。我有很多字段,其中一些与页面布局有关,例如每个条目的特定页面背景。因此,我需要针对此特定内容类型自定义page.tpl。 因此,我激活并打开了主题开发器模块,然后单击正文区域以获取此特定内容类型页面条目的候选名称。它给了我下面的屏幕,对我来说没有任何意义:/当我单击节点区域时,这很好,它给出了node--work.tpl.php,但是我需要页面。我尝试了“ page--work.tpl.php”,但没有成功。 我想念什么?
11 7  theming 

3
将变量传递到自定义块模板文件
我想在Drupal 8中使用自定义内容创建我的自定义块,首先,我在其上创建带有简单文本的块,然后正常工作,我的问题是如何将自定义变量传递给它?我看到了一些有关它的教程,我的模块名称是tcdev,这是.module文件的内容。 function tcdev_theme($existing, $type, $theme, $path) { return array('tcdev' => array( 'variables' => array( 'title' => 'Default title', 'description' => null ), 'template' => 'block--sliderblock' ) ); } 和我的 SliderBlock.php namespace Drupal\tcdev\Plugin\Block; use Drupal\Core\block\BlockBase; /** * Provides a 'SliderBlock' block. * * @Block( * id = "slider_block", * admin_label …
11 theming  8  blocks 

9
如何正确检测区域是否为空?[关闭]
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加细节并通过编辑此帖子来澄清问题。 8个月前关闭。 我有条件在页面模板中打印区域,因为它不是empty,但是无论如何,它将始终打印空白区域。检测空区域的正确方法是什么? 例如,{% if page.local_tasks is not empty %}{{ page.local_tasks }}{% endif %}输出<div class="region region-local-tasks"></div>。 如果我使用渲染区域themename_preprocess_page(),var_dump(drupal_render($variables['page']['highlighted']));我将获得带有占位符标记的SafeString: <div class="region region-highlighted"><drupal-render-placeholder callback="Drupal\Core\Render\Element\StatusMessages::renderMessages" arguments="0" token="a8c34b5e"></drupal-render-placeholder></div> 因此,从技术上讲,该区域并非空白,但对此我无能为力。
11 8  theming 

1
将类添加到包含['data']的Drupal表单元中
在Drupal 8中,渲染Tables仍然很像Drupal7。您在PHP中构建了行和列的多维数组,然后将Drupal 分别转换为a <tr>和<td>s。仍然存在令人困惑的Drupalism,'data'它使您可以将渲染数组元素添加为单元格数据(不要与数据属性相混淆)。 我得到了一个站点,开发人员选择使用“数据”来渲染单元格的内容,但是我无法弄清楚如何<td>在数据周围添加类。 我已经阅读了Table.php的源代码和文档,并且知道新版本,#wrapper_attributes 但是我无法破解。 我尝试了至少四种添加类的方法,但均无效果。 $table['row-' . $row_id] = [ // Option 1: Class appears on <tr> tag '#attributes' => [ 'class' => ['option-1-row-attributes'], 'id' => 'row-' . $row_id, 'no_striping' => TRUE, ], // Option 2: Class appears on <td> tag of first column. 'item' => [ …
11 theming  8 

2
仅对某些块预处理变量
是否可能仅对某些块进行预处理变量?我已经创建了这样的功能:mytheme_preprocess_block__aggregator(&$vars)但是它不起作用。 -编辑- 它似乎在Drupal 8中已修复 https://drupal.org/node/1751194
11 7  theming  8 

3
如何删除页面标题/标题?
在Drupal 8中,是否有一种简单的方法来配置页面,以使其页面标题/标题不显示在页面上? 我创建了一个基本页面,其中/ home作为路径别名,而Home作为标题。我将其设置为首页。但是,它在页面顶部,导航栏和面包屑下方显示“主页”。 是否有必要创建“ Bootstrap”主题的子主题,并以某种方式添加自定义CSS?
10 8  theming 

4
如何主题来自模板文件的链接?
树枝模板正在呈现类随附的链接列表。基础的: {{ mylink }} 树枝代码将输出类似 <a href="#" class="someclass" >the text</a> 并非所有链接都有类。我想编写一个树枝模板,而不是输出类似以下内容的模板: <a href="#" class="someclass" > <span class="sprite someclass" ></span> the text</a> 我尝试过的 我寻找了要覆盖的树枝模板。不幸的是,似乎链接不是由树枝模板渲染的。 我试图像更新树枝变量 set mylink['#title'] = "<span>...</span>" ~ mylink['#title'] 但这不会让我那样做。
10 theming  8 


4
如何修剪正文(field_body)?
我已经为节点创建了一个视图,该视图将内容显示为呈现的实体。除其他外,我在树枝模板中输出body字段: {{ content.field_body }} 现在,我想将文本限制为200个字符,并放置三个点。我已经测试了三种不同的方法来执行此操作,但是没有任何效果。问题是,每种方式也都计数和修剪HTML字符。 1:我在“管理显示”中添加了“修剪”格式=>文本有限,但不正确。而且我没有三个点。 2:我修剪了树枝模板中的文本。但是要计算文字数,我必须先渲染它。因此,twig将文本输出为HTML(我在页面上看到HTML标签!) {% set text = content.field_body|render %} {{ text|length > 200 ? text|slice(0, 200) ~ '...' : text }} 3:我试图解决template_preprocess_node()中的问题。在这里,我在计算HTML标记方面也有同样的问题。 $body_text = $node->get('field_body')->getValue()[0]['value']; $trimmed_text = substr($body_text, 0, 200) . '...'; 如何正确修剪文字? 非常感谢您的帮助!
10 theming  8 

2
如何定义实体预处理功能
我的自定义模块定义了一个自定义实体,该实体扩展了EntityAPIController类。我设法使其基本工作,即通过我的自定义tpl.php文件显示字段等。不过,我想创建一个mymodule_preprocess_entity函数(如建议在这里),以自定义变量添加到tpl.php文件。但是此类功能未运行(未调用)。 另外,当我显示该实体时,我注意到template_preprocess_entity(&$variables)来自entity.module 的函数也未运行。 还需要定义什么才能使被调用的自定义实体具有预处理功能?
10 7  theming  entities 


7
如何使用template_preprocess_page()根据节点类型隐藏页面标题
page.tpl.php如果当前页面是1)处于全屏显示的节点(与预告片模式相反),并且2)节点类型是Concert或bio,我试图隐藏当前页面的标题(由印刷)。我直接在节点内容中打印这些内容类型的节点标题,所以我想隐藏page.tpl.php打印的重复项。我无法直接在page.tpl.php中使用它,我的阅读建议最佳实践是使用预处理和过程功能处理template.php中的模板逻辑。因此,我正在尝试使用来隐藏当前页面标题(具有以上两个条件)template_preprocess_page()。这是我的代码。 <?php function MYTHEME_preprocess_page(&$variables) { if (!empty($variables['node']) && $variables['node']->type == 'concert') { hide($variables['title']); } } ?> 我阅读了如何测试节点类型以从template.php打印变量?以及的文档页面template_preprocess_page()以及其他各种网站,但我似乎无法使它正常工作。我看到isset()了$variables['node']在测试节点类型之前必须调用的建议,但这也不起作用。我没有在任何地方发布明确的解决方案,而我已经不知所措了。
10 nodes  theming  7 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.