HubL-Filter

Last updated:

Filter beeinflussen die endgültige Ausgabe Ihres HubL-Codes. Sie können auf verschiedene HubL-Anweisungen und -Ausdrücke angewendet werden, um das vom Server ausgegebene Template-Markup zu ändern.

Die grundlegende Syntax eines Filters ist |filtername. Der Filter wird direkt nach der Anweisung oder dem Ausdruck innerhalb seiner Trennzeichen eingefügt. Einige Filter haben zusätzliche Parameter, die in Klammern hinzugefügt werden können. Die grundlegende Syntax eines Filters mit einem String, einer Zahl und einem booleschen Parameter lautet: |filtername("stringParameter", 10, true). Beachten Sie, dass String-Parameter in Anführungszeichen geschrieben werden sollten. Beachten Sie auch, dass HubL-Filter einen Alias haben, der für denselben Zweck wie der primäre Filter verwendet werden kann.

Der folgende Artikel enthält alle unterstützten HubL-Filter.

Bitte beachten: Sie können HubL-Filter auf Personalisierungstoken wie Kontakt- und Unternehmens-Token auf HubSpot CMS- und Blog-Seiten anwenden, jedoch nicht in E-Mails. 

abs

Ruft den Absolutwert einer Zahl ab. Sie können diesen Filter verwenden, um sicherzustellen, dass eine Zahl positiv ist.

{% set my_number = -53 %} {{ my_number|abs }}53

add

Addiert einen numerischen Wert zu einem anderen numerischen Wert. Dieser Filter funktioniert genauso wie der Operator +. Der Parameter in Klammern ist der Summand, den Sie mit Ihrem numerischen Ausgangswert kombinieren.

{% set my_num = 40 %} {{ my_num|add(13) }}53

attr

Gibt das Attribut eines Dictionarys wieder. Dieser Filter entspricht dem Ausgeben einer Variablen, die in einem Dictionary vorhanden ist, z. B. content.absolute_url.

ParameterDescription
attribute_name
Erforderlich

Gibt an, welches Attribut gedruckt werden soll

{{ content|attr("absolute_url") }} https://developers.hubspot.com/docs/cms/hubl/filters

batch

Ein batch-Filter fasst Elemente innerhalb einer Sequenz zusammen.

ParameterDescription
linecount
Erforderlich

Die Anzahl der in den Batch aufzunehmenden Elemente

fill_with
Optional

Gibt an, was eingeschlossen werden soll, um fehlende Elemente zu ergänzen

Im folgenden Beispiel gibt es eine Variable, die eine Sequenz von Obstsorten enthält. Der batch-Filter wird auf eine Schleife angewendet, die die Sequenz durchläuft. Die geschachtelte Schleife wird dreimal durchlaufen, um 3 Obstsorten pro Zeile auszugeben, bevor die äußere Schleife erneut läuft. Beachten Sie in der endgültigen Ausgabe, dass, da es nur 5 Obstsorten gibt, das letzte Element durch ein &nbsp (den zweiten Parameter) ersetzt wird.

{% set rows = ["apples", "oranges", "pears", "grapes", "blueberries"] %} <table> {% for row in rows|batch(3, "&nbsp;") %} <tr> {% for column in row %} <td>{{ column }}</td> {% endfor %} </tr> {% endfor %} </table><table> <tbody> <tr> <td>apples</td> <td>oranges</td> <td>pears</td> </tr> <tr> <td>grapes</td> <td>blueberries</td> <td>&nbsp;</td> </tr> </tbody> </table>

between_times

Berechnet die Zeit zwischen zwei datetime-Objekten in einer bestimmten Zeiteinheit.

Bitte beachten: Es wird dringend empfohlen, diesen Filter nur mit Variablen zu verwenden, die ein Datum zurückgeben. Wenn ein Datum nicht überschritten wird, wird der Filter auf das aktuelle Datum angewendet, was dazu führen kann, dass ungenaue Datumsinformationen auf Ihrer Seite angezeigt werden.
ParameterDescription
end
Erforderlich

Das endende datetime-Objekt

timeunit
Erforderlich

Gültige Zeiteinheiten sind nanos, micros, millis, seconds, minutes, hours, half_days, days, weeks, months, years, decades, centuries, millennia und eras.

{% set begin = "2018-07-14T14:31:30+0530"|strtotime("yyyy-MM-dd'T'HH:mm:ssZ") %} {% set end = "2018-07-20T14:31:30+0530"|strtotime("yyyy-MM-dd'T'HH:mm:ssZ") %} {{ begin|between_times(end, "days") }}6

bool

Konvertiert einen Text-String-Wert in einen booleschen Wert.

{% if "true"|bool == true %}hello world{% endif %}hello world

capitalize

Großschreibung des ersten Buchstabens eines Variablenwerts. Das erste Zeichen wird großgeschrieben, alle anderen Buchstaben werden kleingeschrieben. Bei nachfolgenden Wörtern, die durch Leerzeichen oder Bindestriche getrennt sind, wird der erste Buchstabe nicht großgeschrieben.

{% set sentence = "the first letter of a sentence should always be capitalized." %} {{ sentence|capitalize }}The first letter of a sentence should always be capitalized.

center

Der center-Filter verwendet Leerzeichen, um Text innerhalb einer bestimmten Feldlänge zu zentrieren. Dieser Filter wird nicht empfohlen und ist auch nicht besonders nützlich, da der HTML-Compiler von HubSpot die Leerzeichen automatisch entfernt; er ist hier jedoch der Vollständigkeit halber aufgeführt.

ParameterDescription
width
Erforderlich

Gibt die Länge des Leerraums an, in dem der Text zentriert werden soll.

Das folgende Beispiel zeigt, wie ein center-Filter auf eine Variable in einem pre-Tag angewendet wird, sodass die Leerzeichen nicht entfernt werden.

<pre> {% set var = "string to center" %} before{{ var|center(80) }}after </pre><pre> before string to center after </pre>

convert_rgb

Konvertiert einen HEX-Wert in einen RGB-String. Dies ist nützlich, wenn Sie Farbvariablen in RGB konvertieren müssen, um sie mit einer RGBA-CSS-Deklaration zu verwenden. Im folgenden Beispiel wird der von einem Farbmodul festgelegte Wert in einen RGB-Wert umgewandelt und in einer RGBA-CSS-Deklaration verwendet.

{% set my_color = "#FFFFFF" %} {{ my_color|convert_rgb }} {% color "my_color" color="#000000", export_to_template_context=True %} <div style="background: rgba({{ widget_data.my_color.color|convert_rgb }}, .5)"></div>255, 255, 255 <div style="background: rgba(0, 0, 0, .5)"></div>

cut

Entfernt einen String aus einem Wert. Dieser Filter kann verwendet werden, um einen bestimmten Teil eines Strings abzugleichen und auszuschneiden. Der Parameter gibt den Teil des Strings an, der entfernt werden soll. Im folgenden Beispiel werden das Leerzeichen und das Wort „world“ aus dem ursprünglichen Variablenwert entfernt.

ParameterDescription
characters_to_cut
Erforderlich

Der Teil des Strings, der entfernt werden soll.

{% set my_string = "Hello world." %} {{ my_string|cut(" world") }}Hello.

datetimeformat (veraltet)

Bitte beachten: Dieser Filter ist mittlerweile veraltet. Verwenden Sie stattdessen den format_datetime-Filter, der eine stärker standardisierte Syntax verwendet.

default

Wenn der Wert undefiniert ist, wird der erste Parameter zurückgegeben, andernfalls wird der Wert der Variablen gedruckt. Wenn Sie default mit Variablen verwenden wollen, die als false ausgewertet werden, müssen Sie den zweiten Parameter auf true festlegen. Das erste Beispiel unten würde die Meldung drucken, wenn die Variable nicht definiert ist. Das zweite Beispiel wendet den Filter auf einen leeren String an, die nicht undefiniert ist, gibt aber aufgrund des zweiten Parameters eine Meldung aus.

ParameterDescription
default_variable
Erforderlich

Wert, der zurückgegeben wird, wenn die Variable undefiniert ist. Wenn die Variable definiert ist, wird stattdessen der Wert der Variable zurückgegeben.

boolean
Optional

Gibt den default_value zurück, wenn die Variable ein leerer String ist

{{ my_variable|default("my_variable is not defined") }} {{ ""|default("the string was empty", true) }}my_variable is not defined the string was empty

dictsort

Sortiert ein Dict und ergibt (Schlüssel, Wert) Paare. Dictionaries sind standardmäßig unsortiert, Sie können ein Dictionary jedoch nach Schlüssel oder Wert sortiert ausgeben. Der erste Parameter ist ein boolescher Wert, der angibt, ob bei der Sortierung zwischen Groß- und Kleinschreibung unterschieden wird oder nicht. Der zweite Parameter bestimmt, ob das Dict nach Schlüssel oder Wert sortiert werden soll. Das folgende Beispiel druckt ein sortiertes Kontaktverzeichnis mit allen bekannten Details zum Kontakt.

ParameterDescription
case_sensitive
Erforderlich

Legt fest, ob bei der Sortierung zwischen Groß- und Kleinschreibung unterschieden wird

sort_by
Erforderlich

Bestimmt, ob nach key oder value sortiert werden soll

{% for item in contact|dictsort(false, "value") %} {{item}} {% endfor %}A sorted contact dictionary

difference

Dieser Filter gibt die Differenz von zwei Mengen oder Listen zurück. Die vom Filter zurückgegebene Liste enthält alle eindeutigen Elemente, die in der ersten Liste, aber nicht in der zweiten Liste enthalten sind.

ParameterDescription
list
Erforderlich

Die zweite Liste, die zum Vergleich herangezogen wird, um Unterschiede zur ursprünglichen Liste zu finden.

{{ [1, 2, 3]|difference([2, 3, 4, 5]) }}[1]

divide

Teilt den aktuellen Wert durch einen Divisor. Der übergebene Parameter ist der Divisor. Dieser Filter ist eine Alternative zum Operator /.

ParameterDescription
divisor
Erforderlich

Die Zahl, durch die die Variable geteilt werden soll.

{% set numerator = 106 %} {{ numerator|divide(2) }}53

divisible

Als Alternative zum Test des Ausdrucks „divisibleby“ wird der divisible-Filter zu true ausgewertet, wenn der Wert durch die angegebene Zahl teilbar ist.

ParameterDescription
divisor
Erforderlich

Die Zahl, die verwendet werden soll, wenn geprüft wird, ob der Wert teilbar ist.

{% set num = 10 %} {% if num|divisible(2) %} The number is divisble by 2 {% endif %}The number is divisible by 2

escape_html

Versieht den Inhalt mit Escape-Zeichen einer HTML-Eingabe. Akzeptiert einen String und konvertiert die Zeichen &, <, >, , und escape_jinjava in HTML-sichere Sequenzen. Verwenden Sie diesen Filter für HubL-Variablen, die in HTML-Codes verwendet werden, aber kein HTML zulassen dürfen.

{% set escape_string = "<div>This markup is printed as text</div>" %} {{ escape_string|escape_html }}&lt;div&gt;This markup is printed as text&lt;/div&gt;

escape_attr

Versieht den Inhalt mit Escape-Zeichen einer HTML-Attributeingabe. Akzeptiert einen String und konvertiert die Zeichen &, <, und escape_jinjava in HTML-sichere Sequenzen. Verwenden Sie diesen Filter für HubL-Variablen, die HTML-Attributen hinzugefügt werden.

Beachten Sie, dass Sie beim Escaping von Werten von Attributen, die URLs akzeptieren, wie z. B. href, stattdessen den Filter escape_url verwenden müssen.

{% set escape_string = "This <br> markup is printed as text" %} <img src="test.com/testimageurl" alt="{{escape_string|escape_attr}}"><img src="test.com/testimageurl" alt="This &lt;br&gt; markup is printed as text">

escape_jinjava

Konvertiert die Zeichen { und } in Strings in Jinjava-sichere Sequenzen. Verwenden Sie diesen Filter, wenn Sie Text anzeigen müssen, der solche Zeichen in Jinjava enthalten könnte.

{% set escape_string = "{{This markup is printed as text}}" %} {{ escape_string|escape_jinjava }}{{This markup is printed as text}}

escape_js

Versieht Strings mit Escape-Zeichen, einschließlich escape_jinjava, sodass sie sicher in eine JavaScript-Variablendeklaration eingefügt werden können. Verwenden Sie diesen Filter für HubL-Variablen, die in HTML-Skriptelementen verwendet werden.

{% set escape_string = "\tThey said 'This string can safely be inserted into JavaScript.'" %} {{ escape_string|escape_js }}\tThey said \x27This string can safely be inserted into JavaScript.\x27

escape_url

Versieht den Inhalt einer URL-Eingabe mit Escape-Zeichen, erzwingt festgelegte Protokolle, entfernt ungültige und gefährliche Zeichen und kodiert HTML-Entitäten. Gibt eine leere Antwort zurück, wenn eine URL gültig ist. Verwenden Sie diesen Filter für HubL-Variablen, die in HTML-Attributen verwendet werden. Es müssen gültige URLs sein.

{% set escape_string = "https://www.google.com<" %} <a href="{{ escape_string|escape_url }}"> <a href="">

escapejson

Versieht Strings mit Escape-Zeichen, sodass sie als JSON-Werte verwendet werden können.

{% set escape_string = "<script>alert('oh no!')</script>" %} {% require_js position="head" %} <script data-search_input-config="config_{{ name }}" type="application/json"> { "autosuggest_results_message": "{{ escape_string|escapejson }}" } </script> {% end_require_js %}<script data-search_input-config="config_widget_1234567" type="application/json"> { "autosuggest_results_message": "<script>alert('oh no!')<\/script>" } </script>

filesizeformat

Formatieren Sie den Wert wie eine „menschenlesbare“ Dateigröße (z. B. 13 KB oder 4,1 MB, 102 Bytes usw.). Standardmäßig werden dezimale Präfixe verwendet (Mega, Giga usw.), wenn der Parameter auf true gesetzt ist, werden binäre Präfixe verwendet (Mebi, Gibi).

ParameterDescription
boolean
Optional

Bei true werden binäre Präfixe wie Mebi & Gibi verwendet.

{% set bytes = 100000 %} {{ bytes|filesizeformat }}100.0 KB

first

Gibt das erste Element in einer Sequenz zurück.

{% set my_sequence = ["Item 1", "Item 2", "Item 3"] %} {{ my_sequence|first }}Item 1

float

Wandelt den Wert in eine Fließkommazahl um. Wenn die Umrechnung nicht funktioniert, wird 0,0 zurückgegeben. Sie können diese Vorgabe mit dem ersten Parameter außer Kraft setzen.

ParameterDescription
default
Optional

Integer, der zurückgegeben wird, wenn die Konvertierung nicht funktioniert. 

{% text "my_text" value="25", export_to_template_context=True %} {{ widget_data.my_text.value|float + 28 }}53.0

forceescape

Strenge Durchsetzung von HTML-Escaping In der HubSpot-Umgebung gibt es nicht wirklich einen Anwendungsfall für doppeltes Escaping, daher verhält sich dieser Filter im Allgemeinen genauso wie der escape-Filter.

{% set escape_string = "<div>This markup is printed as text</div>" %} {{ escape_string|forceescape }}<div>This markup is printed as text</div>

format

Wendet die Python-String-Formatierung auf ein Objekt an. %s kann durch eine andere Variable ersetzt werden.

{{ "Hi %s %s"|format(contact.firstname, contact.lastname) }} Hi Brian Halligan

format_currency (veraltet)

Bitte beachten: Dieser Filter ist mittlerweile veraltet. Verwenden Sie stattdessen den format_currency_value-Filter.

format_currency_value

Formatiert eine gegebene Zahl als Währung basierend auf der Standardwährung des Portals und dem als Parameter übergebenen Gebietsschema. Ersetzt den veralteten format_currency-Filter.

{{ 100 | format_currency_value(locale='en-GB', currency='EUR', maxDecimalDigits=6, minDecimalDigits=1) }}€100.0
ParameterDescription
locale
Optional

Das Sprach-Tag des Java-Gebietsschemas. Der Standard ist das locale.Format der Seite: ISO639LanguageCodeInLowercase-ISO3166CountryCodeInUppercase

currency
Optional

der alphabetische ISO 4217-Code der Währung, Standard ist die Standardwährung des Portals. Numerische Codes werden nicht akzeptiert.

minDecimalDigits
Optional

Die Mindestanzahl an zu verwendenden Dezimalstellen. Standardmäßig wird die Standardanzahl der Dezimalstellen der Währung verwendet.

maxDecimalDigits
Optional

Die maximale Anzahl an zu verwendenden Dezimalstellen. Standardmäßig wird die Standardanzahl der Dezimalstellen der Währung verwendet.

format_date

Formatiert die date-Komponente eines date-Objekts.
Bitte beachten: Es wird dringend empfohlen, diesen Filter nur mit Variablen zu verwenden, die ein Datum zurückgeben. Wenn ein Datum nicht überschritten wird, wird der Filter auf das aktuelle Datum angewendet, was dazu führen kann, dass ungenaue Datumsinformationen auf Ihrer Seite angezeigt werden.
ParameterDescription
format
Optional

Das zu verwendende Format. Kann eines der folgenden sein:

  • short
  • medium
  • long
  • full
  • ein benutzerdefiniertes Muster gemäß Unicode LDML
timeZone
Optional

Die Zeitzone des Ausgabedatums im IANA-TZDB-Format.

locale
Optional

Das Gebietsschema, das für Formate verwendet werden soll, die das Gebietsschema berücksichtigen.

{{ content.publish_date | format_date('long') }} {{ content.publish_date | format_date('yyyyy.MMMM.dd') }} {{ content.publish_date | format_date('medium', 'America/New_York', 'de-DE') }}November 28, 2022 02022.November.28 28.11.2022

format_datetime

Formatiert sowohl die date- als auch die time-Komponente eines date-Objekts. Dieser Filter ersetzt den veralteten datetimeformat-Filter. Standardmäßig wird eine Datetime in der Zeitzone UTC-00:00 zurückgegeben.
Bitte beachten: Es wird dringend empfohlen, diesen Filter nur mit Variablen zu verwenden, die ein Datum zurückgeben. Wenn ein Datum nicht überschritten wird, wird der Filter auf das aktuelle Datum angewendet, was dazu führen kann, dass ungenaue Datumsinformationen auf Ihrer Seite angezeigt werden.
ParameterDescription
format
Optional

Das zu verwendende Format. Kann eines der folgenden sein:

  • short
  • medium
  • long
  • full
  • ein benutzerdefiniertes Muster gemäß Unicode LDML

Wenn long oder full verwendet wird, enthält der Zeitstempel ein Z, um die Nullpunktverschiebung UTC-Zeit (d. h. 2:23:00 PM Z) zu bezeichnen. Um den Z-Bezeichner zu entfernen, geben Sie eine timeZone an.

timeZone
Optional

Die Zeitzone des Ausgabedatums im IANA-TZDB-Format. Standardmäßig wird die UTC-Zeit zurückgegeben.

locale
Optional

Das Gebietsschema, das für Formate verwendet werden soll, die das Gebietsschema berücksichtigen.

{{ content.publish_date | format_datetime('medium', 'America/New_York', 'de-DE') }}12/31/69 7:00 PM

format_time

Formatiert die Uhrzeitkomponente eines date-Objekts.
Bitte beachten: Es wird dringend empfohlen, diesen Filter nur mit Variablen zu verwenden, die ein Datum zurückgeben. Wenn ein Datum nicht überschritten wird, wird der Filter auf das aktuelle Datum angewendet, was dazu führen kann, dass ungenaue Datumsinformationen auf Ihrer Seite angezeigt werden.
ParameterDescription
format
Optional

Das zu verwendende Format. Kann eines der folgenden sein:

  • short
  • medium
  • long
  • full
  • ein benutzerdefiniertes Muster gemäß Unicode LDML
timeZone
Optional

Die Zeitzone des Ausgabedatums im IANA-TZDB-Format.

locale
Optional

Das Gebietsschema, das für Formate verwendet werden soll, die das Gebietsschema berücksichtigen.

{{ content.updated | format_time('long') }} {{ content.updated | format_time('hh:mm a') }} {{ content.updated | format_time('medium', 'America/New_York', 'de-DE') }}3:25:06 PM Z 03:25 PM 10:25:44

fromjson

Konvertiert einen JSON-String in ein Objekt.

{% set obj ="{ "name":"Brian","role":"Owner" }" %} {{ obj|fromjson }}{role=Owner, name=Brian}

geo_distance

Berechnet den ellipsoiden 2D-Abstand zwischen zwei Punkten auf der Erde.

<!-- in the example below the HubDB Location = 42.3667, -71.1060 (Cambridge, MA) | Chicago, IL = 37.3435, -122.0344 --> {{ row.location | geo_distance(37.3435, -122.0344, "mi") }} MI861.1655563461395 MI

groupby

Der groupby-Filter gruppiert eine Sequenz von Objekten nach einem gemeinsamen Attribut. Der Parameter legt das gemeinsame Attribut fest, nach dem gruppiert werden soll.

ParameterDescription
attribute
Erforderlich

Das Attribut, nach dem gruppiert werden soll.

<ul> {% for group in contents|groupby("blog_post_author") %} <li>{{ group.grouper }} <ul> {% for content in group.list %} <li>{{ content.name }}</li> {% endfor %} </ul> </li> {% endfor %} </ul><ul> <li>Blog author 1 <ul> <li>Post by Blog author 1<li> <li>Post by Blog author 1<li> <li>Post by Blog author 1<li> </ul> </li> <li>Blog author 2 <ul> <li>Post by Blog author 2<li> <li>Post by Blog author 2<li> <li>Post by Blog author 2<li> </ul> </li> <li>Blog author 3 <ul> <li>Post by Blog author 3<li> <li>Post by Blog author 3<li> <li>Post by Blog author 3<li> </ul> </li> </ul>

indent

Der indent-Filter verwendet Leerzeichen, um Text innerhalb einer bestimmten Feldlänge einzurücken. Dieser Filter wird nicht empfohlen und ist auch nicht besonders nützlich, da der HTML-Compiler von HubSpot die Leerzeichen automatisch entfernt; er ist hier jedoch der Vollständigkeit halber aufgeführt. Das folgende Beispiel zeigt, wie ein center-Filter auf eine Variable in einem pre-Tag angewendet wird, sodass die Leerzeichen nicht entfernt werden. Der erste Parameter steuert die Menge an Leerzeichen, und der zweite boolesche Parameter bestimmt, ob die erste Zeile eingerückt werden soll.

ParameterDescription
width
Erforderlich

Die Menge an Leerzeichen, die angewendet werden soll.

boolean
Erforderlich

Ein boolescher Wert, der angibt, ob die erste Zeile eingerückt werden soll.

<pre> {% set var = "string to indent" %} {{ var|indent(2, true) }} </pre> string to indent

int

Konvertiert den Wert in eine Ganzzahl. Wenn die Konvertierung nicht funktioniert, wird 0 zurückgegeben. Sie können diese Vorgabe mit dem ersten Parameter außer Kraft setzen.

ParameterDescription
default
Erforderlich

Integer, der zurückgegeben wird, wenn die Konvertierung nicht funktioniert.

{% text "my_text" value="25", export_to_template_context=True %} {{ widget_data.my_text.value|int + 28 }}53

intersect

Dieser Filter gibt die Schnittmenge von zwei Mengen oder Listen zurück. Die vom Filter zurückgegebene Liste enthält alle eindeutigen Elemente, die in beiden Listen enthalten sind.

ParameterDescription
list
Erforderlich

Die zweite Liste, mit der verglichen werden soll, um herauszufinden, wo sich die Liste mit der ursprünglichen Liste überschneidet.

{{ [1, 2, 3]|intersect([2, 3, 4, 5]) }}[2, 3]

ipaddr

Wird zu true ausgewertet, wenn der Wert eine gültige IPv4- oder IPv6-Adresse ist.

{% set ip = "1.0.0.1" %} {% if ip|ipaddr %} The string is a valid IP address {% endif %} The string is a valid IP address

join

Gibt einen String zurück, die die Verkettung der Strings in der Sequenz ist. Das Trennzeichen zwischen den Elementen ist standardmäßig ein leerer String, Sie können es mit dem optionalen Parameter definieren. Der zweite Parameter kann verwendet werden, um ein zu verbindendes Attribut anzugeben.

ParameterTypeDescription
delimiter
Optional
Zeichenfolge

Das Trennzeichen, das bei der Verkettung von Strings verwendet wird.

attribute
Optional
HubL-Variable

Attribut des Werts, der einem Objekt hinzugefügt werden soll.

{% set my_list = [1, 2, 3] %} {% set sep = "---" %} {{ my_list|join }} {{ my_list|join("|") }} {{ my_list|join(sep) }}123 1|2|3 1---2---3

last

Gibt das letzte Element einer Sequenz zurück.

{% set my_sequence = ["Item 1", "Item 2", "Item 3"] %} {% my_sequence|last %}Item 3

length

Gibt die Anzahl der Elemente einer Sequenz oder einer Zuordnung zurück.

{% set services = ["Web design", "SEO", "Inbound Marketing", "PPC"] %} {{ services|length }}4

list

Konvertieren Sie die Zahlenwerte in eine Liste. Wenn es sich um einen String handelt, ist die zurückgegebene Liste eine Liste von Zeichen. Um Strings zu einer Sequenz hinzuzufügen, fügen Sie sie einfach den String-Variablen an den Sequenztennzeichen [ ] hinzu.

{% set one = 1 %} {% set two = 2 %} {% set three = 3 %} {% set four = ["four"] %} {% set list_num = one|list + two|list + three|list + four|list %} {{ list_num }}[1,2,3]

log

Berechnet den natürlichen Logarithmus einer Zahl.

ParameterDescription
base
Optional

Berechnen Sie den Logarithmus zur n-ten Basis.

{{ 10|log }} {{ 65536|log(2) }}2.302585092994046 16.0

lower

Konvertiert einen Wert in Kleinbuchstaben.

{{ text "text" value="Text to MAKE Lowercase", export_to_template_context=True }} {{ widget_data.text.value|lower }}text to make lowercase

map

Wendet einen Filter auf eine Sequenz von Objekten an oder sucht nach einem Attribut. Dies ist nützlich, wenn man mit Listen von Objekten arbeitet, aber eigentlich nur an einem bestimmten Wert interessiert ist.

Die grundlegende Verwendung ist das Mapping auf ein Attribut. Wenn Sie z. B. mithilfe von bedingter Logik prüfen wollen, ob ein Wert in einem bestimmten Attribut eines Dict vorhanden ist. Alternativ können Sie auch einen Filter aufrufen lassen, indem Sie den Namen des Filters und die Argumente übergeben.

Sie können jeden der beiden unten aufgeführten Parameter verwenden.
ParameterDescription
attribute

Attribut, das in der Reihenfolge der Objekte zurückgegeben werden soll.

filter

Filter, der auf die Sequenz von Objekten angewendet werden soll.

{% set seq = ["item1", "item2", "item3"] %} {{ seq|map("upper") }} {{ content|map("currentState")}}[ITEM1, ITEM2, ITEM3] DRAFT

md5

Berechnet den md5-Hash des angegebenen Objekts

{{ content.absolute_url|md5 }} 923adb4ce05a4c6342c04c80be88d15e

minus_time

Zieht eine Zeitdauer von einem datetime-Objekt ab.

ParameterDescription
diff
Erforderlich

Abzuziehende Dauer.

timeunit
Erforderlich

Gültige Zeiteinheiten sind nanos, micros, millis, seconds, minutes, hours, half_days, days, weeks, months, years, decades, centuries, millennia und eras.

{% set date = "2018-07-14T14:31:30+0530"|strtotime("yyyy-MM-dd'T'HH:mm:ssZ") %} {{ date }} {{ date|minus_time(2, "months") }}2018-07-14 14:31:30 2018-05-14 14:31:30

multiply

Multipliziert einen Wert mit einer Zahl. Funktioniert genauso wie der Operator *.

{% set n = 20 %} {{ n|multiply(3) }}60

_time

Addiert eine Zeitdauer zu einem datetime-Objekt hinzu.

ParameterDescription
diff
Erforderlich

Hinzuzufügende Dauer.

timeunit
Erforderlich

Gültige Zeiteinheiten sind nanos, micros, millis, seconds, minutes, hours, half_days, days, weeks, months, years, decades, centuries, millennia und eras.

{% set date = "2018-07-14T14:31:30+0530"|strtotime("yyyy-MM-dd'T'HH:mm:ssZ") %} {{ date }} {{ date|plus_time(5, "days") }}2018-07-14 14:31:30 2018-07-19 14:31:30

pprint

Gibt eine Variable als pretty print aus. Dies druckt den Typ der Variablen und andere Informationen, die für das Debugging nützlich sind.

{% set this_var ="Variable that I want to debug" %} {{ this_var|pprint }}(String: Variable that I want to debug)

random

Gibt ein zufälliges Element aus der Sequenz zurück.

Bitte beachten: Bei Verwendung dieses Filters wird die Seite nicht jedes Mal, wenn der Seiteninhalt aktualisiert wird, sondern in regelmäßigen Abständen vorgerendert. Dies bedeutet, dass der gefilterte Inhalt nicht bei jedem erneuten Laden der Seite aktualisiert wird.

Dies ist möglicherweise kein Problem für bestimmte Arten von Inhalten, z. B. die Anzeige einer zufälligen Liste von Blog-Beiträgen. Wenn Inhalte jedoch bei jedem Laden der Seite zufällig geändert werden müssen, sollten Sie stattdessen JavaScript verwenden, um den Inhalt client-seitig zu randomisieren.

{% for content in contents|random %} <div class="post-item">Post item markup</div> {% endfor %}<div class="post-item">Random post</div>

regex_replace

Sucht nach einem Regex-Muster und ersetzt es durch eine Sequenz von Zeichen. Das erste Argument ist ein Regex-Muster im RE2-Stil, das zweite ist der Ersatz-String.

Informationen über die RE2-Regex-Syntax finden Sie hier.

{{ "contact-us-2"|regex_replace("[^a-zA-Z]", "") }} contactus

reject

Filtert eine Sequenz von Objekten, indem ein Ausdruckstest auf das Objekt angewendet wird und die Objekte, bei denen der Test erfolgreich war, zurückgewiesen werden.

ParameterDescription
exp_text

Der Ausdruckstest, der auf das Objekt angewendet werden soll.

{% set some_numbers = [10, 12, 13, 3, 5, 17, 22] %} {{ some_numbers|reject("even") }}[13, 3, 5, 17]

rejectattr

Filtert eine Sequenz von Objekten, indem ein Test auf ein Attribut eines Objekts angewendet wird und die Objekte abgelehnt werden, bei denen der Test erfolgreich war. 

ParameterDescription
attribute_name
Erforderlich

Gibt das auszuwählende Attribut an. Sie können mithilfe der Punktnotation auf verschachtelte Attribute zugreifen.

exp_test
Optional

Der zu testende Ausdruck

val
Optional

Wert, auf den getestet werden soll.

{% for content in contents|rejectattr("post_list_summary_featured_image") %} <div class="post-item"> {% if content.post_list_summary_featured_image %} <div class="hs-featured-image-wrapper"> <a href="{{content.absolute_url}}" title="" class="hs-featured-image-link"> <img src="{{ content.post_list_summary_featured_image }}" class="hs-featured-image"> </a> </div> {% endif %} {{ content.post_list_content|safe }} </div> {% endfor %}<div class="post-item">Post with no featured image</div> <div class="post-item">Post with no featured image</div> <div class="post-item">Post with no featured image</div>

render

Rendering von Strings, die HubL enthalten, damit die Ausgabe an andere Filter weitergegeben werden kann.

{{ personalization_token("contact.lastname", "default value")|render|lower }} mclaren

replace

Ersetzt alle Instanzen eines Substrings durch eine neue. 

ParameterDescription
old
Erforderlich

Der Substring, der ersetzt werden soll.

new
Erforderlich

Ersatz-String.

count
Optional

Falls angegeben, werden nur die Vorkommen der ersten Anzahl ersetzt.

{% if topic %} <h3>Posts about {{ page_meta.html_title|replace("Blog | ", "") }}</h3> {% endif %} <h3>Posts about topic name</h3>

reverse

Kehren Sie das Objekt um oder geben Sie einen Iterator zurück, der das Objekt in umgekehrter Reihenfolge durchläuft. Um eine Liste umzukehren, verwenden Sie .reverse()

{% set nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] %} {% for num in nums|reverse %} {{ num }} {% endfor %}10 9 8 7 6 5 4 3 2 1

root

Berechnet die Quadratwurzel eines Wertes.

ParameterDescription
nth_root
Optional

Berechnen Sie die n-te Wurzel von einer Zahl.

{{ 16|root }} {{ 625|root(4) }}4 5

round

Rundet die Zahl auf eine bestimmte Genauigkeit.

ParameterDescription
precision
Optional

Gibt die Genauigkeit der Rundung an.

rounding_method
Optional

Zu den Optionen gehören: common – rundet entweder auf oder ab (Standard); ceil – rundet immer auf; floor – rundet immer ab.

Wenn Sie keine Methode angeben, wird eine common-Methode verwendet.

{{ 52.5|round }} {{ 52.5|round(0, "floor") }}53 52

safe

Markieren Sie den Wert als sicher, was bedeutet, dass diese Variable in einer Umgebung, in der automatisches Escaping aktiviert ist, nicht mit Escape-Zeichen versehen wird.

{{ content.post_list_content|safe }} <p>HTML post content that is not escaped. </p>

sanitize_html

Bereinigt den Inhalt einer HTML-Eingabe für die Ausgabe von Rich-Text-Inhalten. Akzeptiert einen String und entfernt dann HTML-Tags, die nicht zulässig sind. Verwenden Sie diesen Filter für HubL-Variablen, die in HTML-Codes verwendet werden und sicheres HTML ermöglichen sollen.

Wenn Sie diesen Filter verwenden, können Sie die folgenden Parameter einfügen, um bestimmte Arten von HTML-Tags zuzulassen: FORMATTING, BLOCKS, STYLES, LINKS, TABLES, IMAGES. Zum Beispiel: sanitize_html(IMAGES).

Mit sanitize_html werden alle Parameter in den Filter aufgenommen.

Sie können auch einen STRIP-Parameter einfügen, um alle HTML-Codes zu entfernen. Alle Inhalte werden auch über escape_jinjava ausgeführt, um eine verschachtelte Interpretation zu verhindern.

{% set escape_string = "This <br> <div>markup is <img src='test.com/image'> <span>printed</span> as text.</div>" %} {{ escape_string|sanitize_html("IMAGES") }}This markup is <img src="test.com/image"> printed as text.</div>

select

Filtert eine Sequenz von Objekten, indem ein Test auf das Objekt angewendet wird und nur die Objekte ausgewählt werden, bei denen der Test erfolgreich war.

ParameterDescription
exp_text

Der Ausdruckstest, der auf das Objekt angewendet werden soll.

{% set some_numbers = [10, 12, 13, 3, 5, 17, 22] %} {{ some_numbers|select("even") }}[10, 12, 22]

selectattr

Filtert eine Sequenz von Objekten, indem er einen Test auf ein Attribut eines Objekts anwendet und nur die Objekte auswählt, bei denen der Test erfolgreich war.

ParameterDescription
attribute_name
Erforderlich

Gibt das auszuwählende Attribut an. Sie können mithilfe der Punktnotation auf verschachtelte Attribute zugreifen.

exp_test
Optional

Der zu testende Ausdruck

val
Optional

Wert, auf den getestet werden soll.

{% for content in contents|selectattr("post_list_summary_featured_image") %} <div class="post-item"> {% if content.post_list_summary_featured_image %} <div class="hs-featured-image-wrapper"> <a href="{{content.absolute_url}}" title="" class="hs-featured-image-link"> <img src="{{ content.post_list_summary_featured_image }}" class="hs-featured-image"> </a> </div> {% endif %} {{ content.post_list_content|safe }} </div> {% endfor %}<div class="post-item"> <div class="hs-featured-image-wrapper"> <a href="http://blog.hubspot.com/marketing/how-to-get-a-job" title="" class="hs-featured-image-link"> <img src="//cdn2.hubspot.net/hub/53/hubfs/00-Blog-Related_Images/landing-a-job-featured-image.png?t=1431452322770&width=761" class="hs-featured-image"> </a> </div> Post with featured image </div>

shuffle

Legt die Reihenfolge der Iteration durch eine Sequenz wird zufällig fest. Im folgenden Beispiel wird eine Standard-Blogschleife gemischt.

Bitte beachten: Bei Verwendung dieses Filters wird die Seite nicht jedes Mal, wenn der Seiteninhalt aktualisiert wird, sondern in regelmäßigen Abständen vorgerendert. Dies bedeutet, dass der gefilterte Inhalt nicht bei jedem erneuten Laden der Seite aktualisiert wird.

Dies ist möglicherweise kein Problem für bestimmte Arten von Inhalten, z. B. die Anzeige einer zufälligen Liste von Blog-Beiträgen. Wenn Inhalte jedoch bei jedem Laden der Seite zufällig geändert werden müssen, sollten Sie stattdessen JavaScript verwenden, um den Inhalt client-seitig zu randomisieren.

{% for content in contents|shuffle %} <div class="post-item">Markup of each post</div> {% endfor %}<div class="post-item">Markup of each post 5</div> <div class="post-item">Markup of each post 3</div> <div class="post-item">Markup of each post 1</div> <div class="post-item">Markup of each post 2</div> <div class="post-item">Markup of each post 4</div>

slice

Zerschneiden eines Iterators und Rückgabe einer Liste von Listen, die diese Elemente enthalten. Der erste Parameter gibt an, wie viele Elemente in Scheiben geschnitten werden sollen, und der zweite Parameter gibt an, mit welchen Zeichen leere Scheiben gefüllt werden sollen.

ParameterDescription
slices
Erforderlich

Wie viele Elemente werden geschnitten.

filler
Erforderlich

Gibt Zeichen an, mit denen leere Slices aufgefüllt werden. 

{% set items = ["laptops", "tablets", "smartphones", "smart watches", "TVs"] %} <div class="columwrapper"> {% for column in items|slice(3," ") %} <ul class="column-{{ loop.index }}"> {% for item in column %} <li>{{ item }}</li> {% endfor %} </ul> {% endfor %} </div><div class="columwrapper"> <ul class="column-1"> <li>laptops</li> <li>tablets</li> <li>smartphones</li> </ul> <ul class="column-2"> <li>smart watches</li> <li>TVs</li> <li>&nbsp;</li> </ul> </div>

sort

Sortiert eine Iterable. Bei diesem Filter müssen alle Parameter nach einem Attribut in HubSpot sortiert werden. Der erste Parameter ist ein boolescher Wert, der die Sortierreihenfolge umkehrt. Der zweite Parameter bestimmt, ob bei der Sortierung zwischen Groß- und Kleinschreibung unterschieden wird. Und der letzte Parameter gibt ein Attribut an, nach dem sortiert werden soll. Im folgenden Beispiel werden Beiträge aus einem Blog gerendert und nach Namen alphabetisch geordnet.

ParameterDescription
reverse
Erforderlich

Boolescher Wert zur Umkehrung der Sortierreihenfolge.

case_sensitive
Erforderlich

Boolescher Wert, der bestimmt, ob bei der Sortierung zwischen Groß- und Kleinschreibung unterschieden wird. 

attribute
Erforderlich

Attribut, nach dem sortiert werden soll. Beim Sortieren einer Liste auslassen.

{% set my_posts = blog_recent_posts("default", limit=5) %} {% for item in my_posts|sort(False, False, "name") %} {{ item.name }}<br> {% endfor %}A post<br> B post<br> C post<br> D post<br> E post<br>

split

Teilt den Eingabez-String in eine Liste mit dem angegebenen Separator auf. Der erste Parameter gibt den Separator an, mit dem die Variable geteilt werden soll. Der zweite Parameter bestimmt, wie oft die Variable aufgeteilt werden soll. Alle übrigen Elemente verbleiben dann in der Gruppe. Im folgenden Beispiel wird einen String von Namen am „;“ für die ersten 4 Namen geteilt.

ParameterDescription
character_to_split_by
Erforderlich

Gibt den Separator an, durch den die Variable geteilt werden soll.

number_of_splits
Optional

Bestimmt, wie oft die Variable geteilt werden soll. Alle übrigen Elemente bleiben gruppiert.

{% set string_to_split = "Stephen; David; Cait; Nancy; Mike; Joe; Niall; Tim; Amanda" %} {% set names = string_to_split|split(";", 4) %} <ul> {% for name in names %} <li>{{ name }}</li> {% endfor %} </ul><ul> <li>Stephen</li> <li>David</li> <li>Cait</li> <li>Nancy; Mike; Joe; Niall; Tim; Amanda</li> </ul>

string

Konvertiert einen anderen Variablentyp in einen String. Im folgenden Beispiel wird eine Ganzzahl in einen String umgewandelt (pprint wird verwendet, um die Änderung des Variablentyps zu bestätigen).

{% set number_to_string = 45 %} {{ number_to_string|string|pprint }}(String: 45)

striptags

Entfernt SGML/XML-Tags und ersetzt angrenzende Leerzeichen durch ein einziges Leerzeichen. Dieser Filter kann verwendet werden, um alle HTML-Tags aus einer Variablen zu entfernen.

{% set some_html = "<div><strong>Some text</strong></div>" %} {{ some_html|striptags }} some text

strtotime

Konvertiert einen datetime-String und ein datetime-Format in ein datetime-Objekt.

ParameterDescription
datetimeFormat
Erforderlich

Datums- und Uhrzeitmuster.

{{ "2018-07-14T14:31:30+0530"|strtotime("yyyy-MM-dd'T'HH:mm:ssZ")|unixtimestamp }} 1531558890000

sum

Addiert numerische Werte in einer Sequenz. Der erste Parameter kann ein optionales Attribut angeben und der zweite Parameter legt einen Wert fest, der zurückgegeben wird, wenn die zu summierende Variable nichts enthält.

ParameterDescription
attribute
Optional

Zu summierendes Attribut.

return_if_nothing
Optional

Wert, der zurückgegeben wird, wenn die zu summierende Variable nichts enthält.

{% set sum_this = [1, 2, 3, 4, 5] %} {{ sum_this|sum }} Total: {{ items|sum(attribute="price:") }}15 Total: 20

symmetric_difference

Dieser Filter gibt die symmetrische Differenz von zwei Mengen oder Listen zurück. Die vom Filter zurückgegebene Liste enthält alle eindeutigen Elemente, die in der ersten Liste enthalten sind, aber nicht in der zweiten, oder die in der zweiten Liste enthalten sind, aber nicht in der ersten.

ParameterDescription
list
Erforderlich

Die zweite Liste, mit der die symmetrische Differenz zur ursprünglichen Liste ermittelt wird.

{{ [1, 2, 3]|symmetric_difference([2, 3, 4, 5]) }}[1, 4, 5]

title

Gibt eine Title-Case-Version des Wertes zurück. D.h., Wörter beginnen mit Großbuchstaben, alle anderen Zeichen sind in Kleinbuchstaben geschrieben.

{% text "my_title" label="Enter a title", value="My title should be titlecase", export_to_template_context=True %} {{ widget_data.my_title.value|title }}My Title Should Be Titlecase

tojson

Schreibt ein Objekt als JSON-String.

{% for content in contents %} {{ content.blog_post_author|tojson }} {% endfor %}{ "portalId":1234567, "id":12312253109, "created":1566413741989, "updated":1566414012799, "deletedAt":0, "fullName":"Sample User", "email":"sampleUser@example.com", "userId":null, "username":null, "slug":"sample-user", "jsonBody":{ "avatar":"https://app.hubspot.com/settings/avatar/109d6874a0cb066c1c7263ac5df6ce7a", "bio":"Sample Bio", "facebook":"", "linkedin":"", "twitter":"", "website":"https://www.hubspot.com" }, "bio":"Sample Bio", "facebook":"", "linkedin":"", "avatar":"https://app.hubspot.com/settings/avatar/109d6874a0cb066c1c7263ac5df6ce7a", "gravatarUrl":"https://app.hubspot.com/settings/avatar/108bb5ac667ded34796271437dfe8d58", "twitterUsername":"", "hasSocialProfiles":false, "website":"https://www.hubspot.com", "twitter":"", "displayName":"Sample User" }

trim

Entfernt vor- und nachgestellte Leerzeichen. HubSpot schneidet bereits Leerzeichen aus dem Markup ab, aber dieser Filter ist der Vollständigkeit halber dokumentiert.

{{ " remove whitespace " }} {{ " remove whitespace "|trim }} remove whitespace remove whitespace

truncate

Schneidet den Text nach einer bestimmten Anzahl von Zeichen ab. Der Standardwert ist 255. Bitte beachten Sie, dass HTML-Zeichen in dieser Zahl enthalten sind. Die Länge wird mit dem ersten Parameter angegeben, der standardmäßig 255 beträgt. Wenn der zweite Parameter true ist, schneidet der Filter den Text den Text auf die angegebene Länge ab. Andernfalls wird das letzte Wort verworfen. Wenn der Text tatsächlich abgeschnitten wurde, wird ein Auslassungszeichen („…“) angehängt. Wenn Sie ein anderes Auslassungszeichen als „…“ wünschen, können Sie es mit dem dritten Parameter angeben.

Use this table to describe parameters / fields
ParameterDescription
number_of_characters
Erforderlich

Anzahl der Zeichen, um die der Text gekürzt werden soll. Der Standardwert ist 255.

breakword
Optional

Boolescher Wert. Bei true schneidet der Filter den Text auf die angegebene Länge ab. Wenn false, wird das letzte Wort verworfen. 

end
Optional

Überschreiben Sie die standardmäßigen „…“ Zeichen nach dem Abschneiden.

{{ "I only want to show the first sentence. Not the second."|truncate(40) }} {{ "I only want to show the first sentence. Not the second."|truncate(35, True, "..........") }}I only want to show the first sentence. I only want to show the first sente..........

truncatehtml

Kürzt einen vorgegebenen String unter Berücksichtigung des HTML-Markups (d. h., alle verschachtelten Tags werden korrekt geschlossen). Dadurch wird verhindert, dass ein Tag nach dem Abschneiden offen bleibt. HTML-Zeichen werden nicht auf die Gesamtzahl der Zeichen angerechnet. Dieser Filter hat einen Parameter für die Länge und einen Parameter für Abschneiden-Symbol. Es gibt einen dritten booleschen Parameter, der angibt, ob die Wörter bei der angegebenen Länge umgebrochen werden sollen. Dieser Parameter ist standardmäßig false, damit die Länge der Wörter erhalten bleibt. Wenn Sie nur einen der optionalen Parameter verwenden, benutzen Sie Schlüsselwortargumente wie truncatehtml(70, breakwords = false)

ParameterDescription
number_of_characters
Erforderlich

Anzahl der Zeichen, um die der Text gekürzt werden soll. Der Standardwert ist 255.

end
Optional

Überschreiben Sie die standardmäßigen „…“ Zeichen nach dem Abschneiden.

breakword
Optional

Boolescher Wert. Bei true schneidet der Filter den Text auf die angegebene Länge ab. Wenn false, wird das letzte Wort verworfen. 

{% set html_text = "<p>I want to truncate this text without breaking my HTML<p>" %} {{ html_text|truncatehtml(28, "..." , false) }}<p>I want to truncate this..</p>

unescape_html

Konvertiert Text mit HTML-codierten Entitäten in ihre Unicode-Äquivalente.

{% set escape_string = "me &amp; you" %} {{ escape_string|unescape_html }}me & you

union

Dieser Filter gibt die Vereinigung von zwei Mengen oder Listen zurück. Die vom Filter zurückgegebene Liste enthält alle eindeutigen Elemente, die in beiden Listen enthalten sind.

ParameterDescription
list
Erforderlich

Die zweite Liste zur Vereinigung mit der ursprünglichen Liste.

{{ [1, 2, 3]|union([2, 3, 4, 5]) }}[1, 2, 3, 4, 5]

unique

Dieser Filter extrahiert eine eindeutige Menge aus einer Sequenz oder einem Dict von Objekten. Wenn Sie ein Dict filtern, z. B. eine Liste von Beiträgen, die von einer Funktion zurückgegeben wird, können Sie angeben, welches Attribut verwendet wird, um Elemente im Dict zu deduplizieren.

ParameterDescription
attr
Optional

Gibt das Attribut an, das beim Filtern eines dict-Wertes verwendet werden soll

{% set my_sequence = ["one", "one", "two", "three" ] %} {{ my_sequence|unique }}[one, two, three]

unixtimestamp

Dieser Filter wandelt ein datetime-Objekt in einen Unix-Zeitstempel um.

Bitte beachten: Es wird dringend empfohlen, diesen Filter nur mit Variablen zu verwenden, die ein Datum zurückgeben. Wenn ein Datum nicht überschritten wird, wird der Filter auf das aktuelle Datum angewendet, was dazu führen kann, dass ungenaue Datumsinformationen auf Ihrer Seite angezeigt werden.
{{ local_dt }} {{ local_dt|unixtimestamp }}2017-01-30 17:11:44 1485814304000

upper

Konvertiert einen Wert in Großbuchstaben.

{% text "text" value="text to make uppercase", export_to_template_context=True %} {{ widget_data.text.value|upper }}TEXT TO MAKE UPPERCASE

urlencode

Versieht einen String mit Escape-Zeichen und URL-codiert ihn mit UTF-8-Formatierung. Akzeptiert sowohl Dictionaries und reguläre Strings als auch paarweise Iterablen.

{% text "encode" value="Escape & URL encode this string", label="Enter slug", export_to_template_context=True %} {{ widget_data.encode.value|urlencode }}Escape+%26+URL+encode+this+string

urldecode

Decodiert codierte URL-Strings zurück zur die ursprünglichen URL. Akzeptiert sowohl Dictionaries und reguläre Strings als auch paarweise Iterablen.

{% text "decode" value="Escape+%26+URL+decode+this+string", label="Enter slug", export_to_template_context=True %} {{ widget_data.decode.value|urldecode }}Escape & URL encode this string

urlize

Konvertiert URLs im Klartext in klickbare Links um. Wenn Sie dem Filter eine zusätzliche ganze Zahl übergeben, werden die URLs auf diese Zahl gekürzt. Der zweite Parameter ist ein boolescher Wert, der angibt, ob der Link rel="no follow" ist. Mit dem letzten Parameter können Sie angeben, ob der Link in einer neuen Registerkarte geöffnet werden soll.

ParameterDescription
shorten_text
Optional

Ganzzahl, die die URLs auf die gewünschte Anzahl kürzt.

no_follow
Optional

Boolescher Wert, der angibt, ob der Link rel="no follow" ist.

target="_blank"
Optional

Gibt an, ob der Link in einem neuen Tab geöffnet wird.

{{ "http://hubspot.com/"|urlize }} {{ "http://hubspot.com/"|urlize(10,true) }} {{ "http://hubspot.com/"|urlize("",true) }} {{ "http://hubspot.com/"|urlize("",false,target="_blank") }}<a href="//hubspot.com/">http://hubspot.com/</a> <a href="//hubspot.com/" rel="nofollow">http://...</a> <a href="//hubspot.com/" rel="nofollow">http://hubspot.com/</a> <a href="//hubspot.com/" target="_blank">http://hubspot.com/</a>

wordcount

Zählt die Anzahl der Wörter in einem String.

Wenn der String HTML enthält, verwenden Sie den Filter striptags, um eine genaue Zählung zu erhalten.

{% set count_words = "Count the number of words in this variable" %} {{ count_words|wordcount }}8

wordwrap

Bewirkt den Umbruch von Wörtern bei einer bestimmten Zeichenanzahl. Dies funktioniert am besten in einem <pre>, da HubSpot standardmäßig Leerzeichen entfernt.

ParameterDescription
character_count
Erforderlich

Anzahl der Zeichen, mit denen der Inhalt umbrochen werden soll.

{% set wrap_text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam efficitur, ipsum non sagittis euismod, ex risus rhoncus lectus, vel maximus leo enim sit amet dui. Ut laoreet ultricies quam at fermentum." %} {{ wrap_text|wordwrap(10) }}Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam efficitur, ipsum non sagittis euismod, ex risus rhoncus lectus, vel maximus leo enim sit amet dui. Ut laoreet ultricies quam at fermentum.

xmlattr

Erstellen Sie einen HTML/XML-Attribut-String, der auf den Elementen in einem Dict basiert. Alle Werte, die weder „keine“
noch undefiniert sind, werden automatisch mit Escape-Zeichen versehen. Es wird automatisch ein Leerzeichen vor das Element gesetzt, wenn der Filter etwas zurückgegeben hat, es sei denn, der erste Parameter ist falsch.

ParameterDescription
autospace
Erforderlich

Boolescher Wert, der automatisch ein Leerzeichen vor das Element setzt, sofern er nicht auf false gesetzt ist.

{% set html_attributes = {"class": "bold", "id": "sidebar"} %} <div {{ html_attributes|xmlattr }}></div><div class="bold" id="sidebar"></div>

War dieser Artikel hilfreich?
Dieses Formular dient dazu, Feedback zu unserer Entwicklerdokumentation zu sammeln. Wenn Sie uns Ihre Meinung zu HubSpot-Produkten mitteilen möchten, teilen Sie diese bitte im Ideenforum der Community.