在 Twig 中查找和替换动态创建的字符串?

Finding and replacing a dynamically created string in Twig?

在 craft cms 的字段中定义了一个产品 URL。

我需要使用 Twig

将 http 替换为 https

我正在使用查找和替换方法,但没有看到任何变化。 已尝试将查找和替换

 {% set productlUrlUpdate = "http://address" %}
 {% set productUrlUpdate = productUrlUpdate|replace({'http://address' : https://address'}) %}

定义 productUrl 之前和之后 <img> 在呈现给浏览器时没有看到任何变化

{% set productUrl = entry['productUrl'] is defined and entry.productUrl is not empty
? entry.productUrl
%}


 {% set productlUrlUpdate = "http://address" %}
 {% set productUrlUpdate = productUrlUpdate|replace({'http://address' :
'https://address'}) %}


<img src="{{ productlUrl }}" width="1" height="1">

有人可以向我解释我哪里出错了吗

您没有看到任何更改的事实在于您正在对(不存在的)变量 productUrlUpdate 进行替换,而不是您正在输出的变量(productUrl )

你应该做

<img src="{{ productlUrl | replace({'http://':'//',}) }}" width="1" height="1">