hig_entity_decode for twig(opencart)

时间:2017-08-31 15:44:59

标签: twig opencart

我试图在我的产品页面上输出产品的属性(opencart v3)。

该属性被称为' technicaldetails'并且使用此代码可以正常工作:

{% if attribute_groups %}
  {% for attribute_group in attribute_groups %}
    {% if attribute_group.name == 'technicaldetails' %}
      {% for attribute in attribute_group.attribute %}
        {{ attribute.text }}
      {% endfor %}
    {% endif %}
  {% endfor %}
{% endif %}

但是技术细节字段中存储了无样式列表..这会输出完整的html而不是呈现列表。

香港专业教育学院尝试使用{{ attribute.text|e }}{{ attribute.text|raw }}以及我可以找到的许多其他替代方案..但每次只是抛出html而不是渲染它..

在php中,这曾经有用。

<?php echo html_entity_decode($attribute['text']); ?>

所以我怎么能解码html现在因为我不能在树枝上使用php而且树枝上也没有html_entity_decode :(

期待一些帮助:)

非常感谢

感谢。

2 个答案:

答案 0 :(得分:1)

只需在twig中注册twig功能即可。 最简单的方法是查看加载$twig->addFilter(new \Twig_Simple_Filter, 'html_entity_decode', 'html_entity_decode'); 的位置并添加以下代码

twig

之后,您可以在{{ attribute.text|html_entity_decode }} 模板

中执行以下操作
Sub HourAllocationsRegs()

Dim strStartRow As String
Dim strEndRow As String
Dim strRefRow As String
Dim lngLastRow As Long
Dim strMyValue As String

Application.ScreenUpdating = False

strMyValue = "Employee Totals" 'Value to search for, change as required.
Sheets("Regs").Select
lngLastRow = Cells(Rows.Count, "A").End(xlUp).Row 'Search Column A, change as required.

For i = 7 To lngLastRow Step (K - lngStartRow + 1) 'Starts on Row 7 and will jump to the next group according to row of next value
    strStartRow = (i + K - lngStartRow)
    strRefRow = (i + K - lngStartRow + 3)
    For K = Val(strStartRow) To lngLastRow Step 1
        If InStr(1, (Range("A" & K).Value), strMyValue) > 0 Then
            strEndRow = K
            Rows(strStartRow & ":" & strEndRow).Select
            Selection.Copy
            Sheets(Range("C" & strRefRow).Text).Select
            Range("A1048576").End(xlUp).Offset(1, 0).Select
            ActiveSheet.Paste
            Application.CutCopyMode = False
            Sheets("Regs").Select
            lngStartRow = i
            Exit For
        End If
    Next
Next

End Sub

答案 1 :(得分:1)

查找文件

document_root/system/library/template/twig.php

就在

之后
$this->twig = new \Twig_Environment($loader, $config);

添加以下代码

$twig->addFilter(new \Twig_SimpleFilter('html_entity_decode', 'html_entity_decode'));

执行完此操作后,您必须去admin才能重新加载菜单扩展->修改中的所有修改。 之后,您可以在所有树枝文件* .twig

中执行以下操作
{{ attribute.text|html_entity_decode }}