Twig中的relenate url() -- theming 领域 和 8 领域 drupal 相关 的问题

Concatenate url() in Twig


1
vote

问题

中文

我试图做一些我认为是相当简单的事情,但它给出了错误:

注意:数组到__twigtemplate_dd3a187031be000574aa6b214908b2daacd4f1d086638752b892daaad4f1d08b2aadf-> dodisplay()(供应商/ twig / twig / lib / twig / nevions.php(462):eval()'d代码)。

是什么导致它:

  {% set support_url = url('<front>') ~ 'support' %}   

所以我尝试了一些东西:

  {{ url('<front>') }}<br /> {% set support_url = url('<front>') %} {{ support_url }}<br /> {% set support_url = url('<front>') ~ 'support' %} {{ support_url }}<br />   

以上结果是:

http://www.example.com/

http://www.example.com/

arraysupport

发生了什么?

英文原文

I tried to do something that I thought was fairly simple, but it's giving an error:

Notice: Array to string conversion in __TwigTemplate_dd3a187031be000574aa6b2149e8b2daacd4f1d086638752b5928811c46b8adf->doDisplay() (line 132 of vendor/twig/twig/lib/Twig/Environment.php(462) : eval()'d code).

What caused it:

{% set support_url = url('<front>') ~ 'support' %} 

So I tried something:

{{ url('<front>') }}<br /> {% set support_url = url('<front>') %} {{ support_url }}<br /> {% set support_url = url('<front>') ~ 'support' %} {{ support_url }}<br /> 

The result of the above is:

http://www.example.com/

http://www.example.com/

Arraysupport

What is going on?

     
       
       

回答列表

3
 
vote

URL函数返回渲染阵列,因此您无法将其与字符串连接。您必须先将其转换为字符串。

try render_var():

  {% set support_url = render_var(url('<front>')) ~ 'support' %}  <h1>{{ support_url }}</h1>   

这将将URL函数创建的渲染阵列转换为字符串。

 

The url function returns a render array, so you can't concatenate it with a string. You must first convert it to a string.

try render_var():

{% set support_url = render_var(url('<front>')) ~ 'support' %}  <h1>{{ support_url }}</h1> 

This will convert the render array created by the url function to a string.

 
 
0
 
vote

我不知道我的贡献是否有用,但我有一个 multilanguage 网站的问题,我以这种方式解决了它。

缺点是,语言未显示/ es,/ en,/ pt-br等。它始终显示了基本语言的URL,即en。

  {% set support_url = path('<front>') ~ '/node/102' %}  {% set base_url = render_var(url('<front>')) ~ support_url %}   <a href="{{ base_url }}">     <h2 class="block-title">{{ 'Change'|t}}    </h2> </a>   
 

I do not know if my contribution is useful, but I had a problem with a multilanguage site and I solved it in this way.

The drawback was, that the language is not shown /ES, / EN, /pt-br, etc. It always showed the url of the base language, that is, EN.

{% set support_url = path('<front>') ~ '/node/102' %}  {% set base_url = render_var(url('<front>')) ~ support_url %}   <a href="{{ base_url }}">     <h2 class="block-title">{{ 'Change'|t}}    </h2> </a> 
 
 

相关问题

0  覆盖自定义模块模板  ( Override custom module template ) 
我创建了一个与自己的模板文件的自定义模块,以显示带有以下代码的内容。 function mymodule_theme($existing, $type, $theme, $path) { return [ 'theme_mymodule_list' => [ 'template' => '...

0  无法在主题中更改背景图像  ( Unable to change the background image in theme ) 
我正在尝试改变主题中提供的背景图像。下面是来自 STYLE.CSS 文件的CSS片段: .toplayer{ background: url(../images/theme.png) right no-repeat; position: fixed; top: 0; right: 0; hei...

1  如何为服务器500错误创建一个枝条覆盖?  ( How do i create a twig override for server 500 error ) 
如何覆盖用于500错误的模板? 有没有办法从模块实现这一点? ...

0  如何将样式应用于特定页面?  ( How to apply a style to a specific page ) 
我想在我的网站页面上应用不同的stype。 以下代码将硬背景应用于所有产品页面: body.path-product { background-image: url("/themes/contrib/bootstrap_subtheme_front_office/images/background-pag...

1  在标题中使用自定义字段(另一个区域)  ( Use custom field in header another region ) 
我是drupal 8.我有一个内容,其中有几个自定义字段。让我们说出它的名字是中的标题。因此,每当您需要添加新内容时,您也必须填写此。 现在,此整个内容在内容块(和内容块处于内容区域中)。 我的模板有标题区域,内容区域和页脚区域。 我的问题是我希望在标题区域中的块中访问该块中的自定义字段(标题)。但我不知道如何做到这...

1  “链接包装器”为'#theme_wrappers'?  ( Link wrapper for theme wrappers ) 
我想构建一个渲染阵列,孩子HTML在链接元素中包装。 我正在寻找类似于 '#type' => 'container' 的东西来实现这一目标。所以它会转化为例如 '#theme_wrappers' => ['link_wrapper'] 。 e.g。像这样: $link_element = [ '#type'...

1  基于节点注释设置而非用户权限显示注释链接功能  ( Show comment link function based on node comment settings and not user privilege ) 
我正在为我的一个内容类型创建自定义主题和模块。我想在特定内容类型中显示评论的评论链接,只有在节点上打开注释,甚至专门为内容类型全局进行注释。我最初使用以下内容,例如,在我的tpl.php中简化了,如果用户有权评论,则显示链接。但是,在我的情况下,我允许在网站上允许注释,但我不允许它们在这种特定的内容类型上。我想在未来...

0  移动特定节点的标题  ( Move title of a specific node ) 
我要做的是从通常在整个站点上显示的位置删除特定内容类型的标题,并在模板中的其他位置打印它。 我有一个自定义节点.Php for Content类型,允许调用它节点 - 自定义 - content-type.tpl.php,它位于我为此内容类型和网站上的部分制作的小文件区内。让我们称之为mycustom_subthe...

2  将分类ID类添加到身体标签(D8)  ( Add taxonomy id class to the body tag d8 ) 
我有一个分类词汇,他们的各种父母和孩子需要具有不同的风格。我需要每个分类页面的TID在正文标签中显示为类,以便制作CSS选择器。 我尝试了使用这个< / a>要解决解决方案,但它似乎仅适用于节点。我得到一个称为道路学的课程,每个分类学术语都是它的。 我宁愿不要安装任何模块。谢谢 ...

1  自定义布局插件没有内容  ( Custom layout plugin has no content ) 
我有一个自定义布局插件,在某个部分中没有内容。如果在Drupal8渲染模板之前,我如何获得枝条以测试它是否有内容。 枝杈如果不起作用的语句是: {% if content.content_left %} 这是整个枝条布局 <div class="content-top"> {{ conten...

2  如何使用phpstorm调试主题.Theme文件中的主题?  ( How can i debug theme theme file in my theme using phpstorm ) 
我想在 $form_state[values][update_file]1 文件中设置断点文件并调试一些变量,但我不能这样做,因为这个文件不是 $form_state[values][update_file]2 文件。如何调试此文件? ...

2  如何检查是否发布了基本页面?  ( How to check if a basic page is published ) 
我正在使用drupal 8.1.10。我有一个基本的网页,URL别名"/进入竞争" 。在Twig模板(与该页面无关)上,我有以下HTML: <a href="/enter-competition">Enter Competition</a> 我需要这个链接只有在发布状态处于发布状态,如: {% if p...

2  是否必须将默认值设置为树枝中的变量  ( Do i have to set a default value to a variable in twig ) 
通常在PHP中,我必须将默认值设置为变量,但是在树枝中我必须设置默认值? {% if content.my_field|render %} {% set offset = content.my_field['#items'].getString() %} {% endif %} <div{{ attribu...

1  预处理节点和模板覆盖  ( Preprocess node and template overrides ) 
我正在使用preprocess_node钩子从实体引用中提取数据,并将它们添加为自定义变量,然后将其溅出在枝模板中。 问题就是现在,这些自定义变量看似没有适用的模板覆盖。 之前,我可以在节点模板中输出{{content.address}}(它将包含街道名称,邮政编码,国家/地区等),然后用字段节点 - 字段 - *...

0  为什么我的绝对链接成为WebForm电子邮件模板中的相对路径?  ( Why are my absolute links becoming relative paths in webform email template ) 
我有一个webform,其中最终用户可以上传图像文件。我的办公室用户报告说,当他们收到并通过电子邮件通知提交时,将打破图像的链接。 我正在努力更新用于WebForm提交的电子邮件模板。我创建了 webform-mail-34981.tpl.php ,这是有问题的WebForm的nid。 首先,我将字段突然分成单独...

-1  子主题正在影响主题的评论模板  ( Sub theme is affecting comments template of main theme ) 
答案模块, answers_theme ,搞砸了什么评论,以及它们在网站上的主题中的配置方式。没有 comments--mysubtheme.tpl.php 文件。还有什么可能导致这个问题? 我正在基于 answers_theme 构建自定义子主题,只能影响它的设计,但它影响了它的评论范围。要构建子主题,我已将文...

1  在加载节点后显示值不是列表的键  ( Display value not key of list after loading of node ) 
我创建了一个控制器,我正在加载节点。 $variables['contest'] = Node::load(12); return [ '#theme' => 'theme_contest', '#variables' => $variables, ]; 在此节点中,有一个字段"field...

1  如何在树枝中的引用实体中拆分内容?  ( How to split up content in a referenced entity in twig ) 
我在一个由一个由一个sitebuilder构建的项目,坦率地乱七八糟。 我有一些内容类型,它使用自定义块加入进入位置详细信息的能力e。地址和地理位置(通过传单显示)。 现在,我需要能够"拆分" 渲染实体的输出,以便我可以将地址放在页面的一个部分中,以及另一个传单映射。 我显然能够通过在Node模板的两个部分中放置<代...

1  如何显示另一个文本,如果字段Val 0?  ( How to show another text if field val 0 ) 
{% for item in items %} {% if item.content %} <div class="result-features__body"> <p class="result-features__title">balance</p> ...

2  创建完整页自定义模块  ( Create full page custom module ) 
我想使用自定义模块创建完整页面。我的意思是一个不应该驻留在较大的Drupal页面内的页面。我如何实现这一目标? 这是我正在使用的代码。 mymodule.module function mymodule_menu() { $result = array(); $result['mymodule'...




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


Licensed under cc by-sa 3.0 with attribution required.