+49 69 83008980 service@xqueue.com

Benötigen Sie Hilfe?

Merge Tags

< Alle Themen
 

Introduction

Merge Tags are used inside mailing contents as placeholders for personalized output. Merge Tags can be used in:

 – the subject

 – the sender alias

 – the recipient alias

 – the html version

 – the text version

Notation

The syntax definitions are given in general form. The following notations are used for syntax definitions:

notation definition
[ something ] “something” is optional.
alternative1 | alternative2 A logical or, marking alternatives.
( something ) Group “something”, used in conjunction with |* and +.
* The asterisk shows that zero or more repetitions of the preceding expression may be present.
+ The plus sign shows that one or more repetitions of the preceding expression may be present.
code Literal merge tag code is shown in a fixed-width font with a light gray background.
placeholder Placeholders are printed in italics in the same format as literal code. They are further explained in the “Description” section of each tag.
 

Basic Merge Tags

Properties  
Syntax [[ namespace|property [ |fallback] ]]
Description Displays the value of a property of the mailing, the contact or the account.

 – namespace is one of CONTACTACCOUNT, and MAILING.

 – property identifies the property to display, e.g. the name of the contact field for the namespace CONTACT.

 – fallback is an optional default value to use if the property is not set.

Example
[[CONTACT|FIRSTNAME]]
[[CONTACT|mycustomfield]]
[[MAILING|SENDER]]
[[ACCOUNT|NAME]]
sender / recipient alias yes
subject yes
text / html yes
Open (tracking) pixels  
Syntax [[OPEN-PIXEL]]
Description Generates a URL that returns an tiny open pixel to register opening events.
Example
<img width="1" height="1" src="[[OPEN-PIXEL]]"/>
sender / recipient alias no
subject no
text / html yes
Unsubscribe links  
Syntax [[UNSUBSCRIBE]]
Description Generates an unsubscribe URL.
Example
<a href="[[UNSUBSCRIBE]]">Click here to unsubscribe</a>
sender / recipient alias no
subject no
text / html yes
“Update profile” links  
Syntax [[UPDATE-PROFILE]]
Description Generates an update profile URL.
Example
<a href="[[UPDATE-PROFILE]]">Edit you settings here</a>
sender / recipient alias no
subject no
text / html yes
Online version links  
Syntax [[ONLINE-VERSION]]
Description Generates an online version URL which is also called rescue link to preview the mailing content in the browser.
Example
<a href="[[ONLINE-VERSION]]">
  Click here if you face problems to see contents in mail client
</a>
sender / recipient alias no
subject no
text / html yes
Trackable links  
Syntax [[LINK|url]]
Description Generates a trackable link that redirects to url.
Example
<a href="[[LINK|http://www.maileon.com]]">
  Visit the Maileon website
</a>
sender / recipient alias no
subject no
text / html yes
Trackable links with tags  
Syntax [[LINK|url|tags]]
Description Generates a trackable link that redirects to url and maps the provided tags to the link in reports. Note that the tags must be separated by #. The tag names must be alphanumeric.
Example
<a href="[[LINK|http://www.maileon.com|maileon#website#version1]]">Visit the Maileon website</a>
sender / recipient alias no
subject no
text / html yes
Conditionals  
Syntax [[IF|condition|namespace|property]]( [[ELSE-IF|condition|namespace|property]] … )* [ [[ELSE]] … ] [[/IF]]
Description

Includes template parts conditionally based on the value of a property

  -namespace is the namespace of the property. Valid values are TRANSACTIONCONTACTACCOUNT, and MAILING.

-property identifies the property to test against. When namespace is TRANSACTION, this is a dot-separated JSON path. For CONTACTACCOUNT, and MAILING, it is the name of the respective property.

-condition is the condition to test against the specified property. See Conditionals for a list of supported test conditions.

Example
[[IF|EQUALS('m')|CONTACT|GENDER]]
he
[[ELSE-IF|EQUALS('f')|CONTACT|GENDER]]
she
[[ELSE]]
they
[[/IF]]

This will print “he” for male contacts, “she” for female contacts and “they” when GENDER is not set for the contact.

sender / recipient alias no
subject no
text / html yes
 

Transaction merge

See Transactions on how to provide content to these merge tags.

Example transaction content:

{
  "order": {
    "id": "2418",
    "date": "2014-05-28 11:34:21",
    "url": "http://www.my-shop.com/order/2418?action=status",
    "items": [
      {
        "price": 20,
        "quantity": 4,
        "product": "product a"
      },
      {
        "price": 25,
        "quantity": 2,
        "product": "product b",
        "category": "category b"
      },
      {
        "price": 10,
        "quantity": 3,
        "product": "product c"
      }
    ]
  },
  "currency": "EURO",
  "sum": 160
}
Reading transaction attributes  
Syntax [[ [ stringfunc| ] TRANSACTION|path [ |fallback ] ]]
Description Displays a transaction attribute, with optional default value and optional text transformation. The placeholders work as follows:

-path is the path of a primitive (i.e. non-array, non-object) transaction attribute. Path elements are separated using a dot. Example: [[TRANSACTION|order.date]] will yield the result “2014-05-28 11:34:21” for the example transaction above.

-fallback is a default value to use if the attribute is not present in the transaction. Example: [[TRANSACTION|order.id|0]] will yield “0” for the example transaction above.

-stringfunc is a text transformation as defined in String functions.

sender / recipient alias no
subject no
text / html yes
Iterating lists  
Syntax [[LIST|TRANSACTION|path|alias
[ |ORDER-BY('relative_path', ( DESC | ASC ) ) ]
[ |RANGE( [ from ] [ to ] ) ]
]]

[[ITEM|alias|path2 [ |fallback ] ]]

[[/LIST]]
Description [[LIST|TRANSACTION]] loops over the items of a JSON array in the transaction content. The placeholders are defined as follows:

-path is the path of the JSON array within the transaction. Path elements are separated with dots. Example: 'order.items'

-alias is the name to bind to the current item inside the loop body.

-relative_path is a JSON path (relative to the current item) that identifies the attribute to order by. Example: ORDER-BY('price', ASC) will order the items in the example transaction content by their price attribute, from lowest to highest.

-from and to are inclusive, 1-based item positions that define which range of items to select. Note that either or both may be omitted.

-path2 is a JSON path (relative to the current item) that identifies the attribute to display. Example: [[ITEM|i|product]] will display the value of the product attribute of each item.

-fallback is a default value to display if the item does not contain the referenced attribute. Example: [[ITEM|i|category|none]] will display the value of the attribute category of each item, or “none” if the attribute is not set for the item.

Example
<table border="1">
<tr>
  <th>quantity</th>
  <th>item</th>
  <th>category</th>
  <th>price</th>
</tr>
[[LIST|TRANSACTION|order.items|i|ORDER-BY('quantity', DESC)]]
<tr>
  <td>[[ITEM|i|quantity]]</td>
  <td>[[ITEM|i|product]]</td>
  <td>[[ITEM|i|category|none]]</td>
  <td>[[ITEM|i|price]] [[TRANSACTION|currency]]</td>
</tr>
[[/LIST]]
<tr>
  <td colspan="3"><strong>total</strong></td>
  <td>[[TRANSACTION|sum]] [[TRANSACTION|currency]]</td>
</tr>
</table>

For the example transaction above, this will produce the following table:

quantity item category price
4 product a none 20 EURO
3 product c none 10 EURO
2 product b category b 25 EURO
total 160 EURO
sender / recipient alias no
subject no
text / html yes
List item indexes  
Syntax [[ITEM-INDEX|alias|start]]
Description Used inside the body of a [[LIST-construct.

-alias is the name the list item is bound to inside the loop.

-start is the base for counting, i.e. the index of the first item of the list.

Example
[[LIST|TRANSACTION|order.items|i|ORDER-BY('quantity', DESC)]]
[[ITEM-INDEX|i|0]]
[[/LIST]]

will produce the following output:

0
1
2
sender / recipient alias no
subject no
text / html yes
Trackable links with personalization  
Syntax [[LINK|"
([ link_part ][ [ [ +| ] TRANSACTION|path [ |fallback ] ] ])+ "]]
Description Generates a trackable link that redirects to a URL that was personalized using transaction attributes.

-link_part is a constant substring of the URL to construct.

-path is the JSON path of a transaction attribute.

-fallback is a default value to use if the transaction does not contain the attribute referenced by path.

-Adding +| before TRANSACTION will prevent Maileon from url-encoding the attribute value. Use this when the transaction attribute contains complete URLs or URL parts that should not be escaped (e.g. slashes in subpaths).

Example [[LINK|"http://www.xqueue.com/[TRANSACTION|order.id]/foo"]] will generate a link that redirects to http://www.xqueue.com/2418/foo given the example transaction above.
[[LINK|"[+|TRANSACTION|order.url]"]] will generate a link that redirects to http://www.my-shop.com/order/2418?action=status given the example transaction above.
sender / recipient alias no
subject no
text / html yes
Conditionals on transaction properties  
Syntax [[IF|condition|namespace|property]]( [[ELSE-IF|condition|namespace|property]] … )* [ [[ELSE]] … ] [[/IF]]
Description Includes template parts conditionally based on the value of a transaction attribute. Also see the documentation for the general form of if statements.

-path is the path of the attribute to perform the conditional computation on. Path segments are separated by dots.

-condition is the condition to test against the transaction attribute. See Conditionals for a list of supported test conditions.

Example
[[IF|EQUALS-IGNORE-CASE('euro')|TRANSACTION|currency]]
  Your total is [[TRANSACTION|sum]] &amp;euro;.
[[ELSE-IF|EQUALS-IGNORE-CASE('pound')|TRANSACTION|currency]]
  Your total is [[TRANSACTION|sum]] &amp;pound;.
[[ELSE]]
  Your total is [[TRANSACTION|sum]] [[TRANSACTION|currency]].
[[/IF]]

For the example transaction, this will print “Your total is 160 €.”.

sender / recipient alias no
subject no
text / html yes
Conditionals on JSON array items  
Syntax [[IF|item-condition|ITEM|alias]]

( [[ELSE-IF|item-condition|ITEM|alias]]
… )*
[ [[ELSE]]
… ]
[[/IF]]
Description Includes template parts conditionally based on the value of a JSON array item. Can only be used inside a list construct.

-alias is the alias of the item inside th eloop.

-item-condition is an item-specific condition to test against the item. See Conditionals.

Example
[[LIST|TRANSACTION|order.items|i|ORDER-BY('quantity', DESC)]]
  [[IF|IS-ITEM-ODD|ITEM|i]]
    odd
  [[/IF]]
  [[IF|IS-ITEM-EVEN|ITEM|i]]
    even
  [[/IF]]
  [[IF|HAS-NEXT|ITEM|i]]
    more items ahead...
  [[/IF]]
[[/LIST]]

For the example transaction, this will print:

odd
more items ahead...
even
more items ahead...
odd
sender / recipient alias no
subject no
text / html yes
 

String functions

These functions transform strings. Input for the examples is 'EURO'.

function description syntax example result
REPLACE perform string substitution [[REPLACE(‘R’,’X’)|TRANSACTION|currency]] EUXO
CAP-FIRST capitalize the first word [[CAP-FIRST|TRANSACTION|currency]] EURO
CAPITALIZE capitalize all words [[CAPITALIZE|TRANSACTION|currency]] EURO
CSV-COUNT count the number of comma-separated fields [[|TRANSACTION|currency]] 1
HTML escape all html entities [[HTML|TRANSACTION|currency]] EURO
LENGTH count the number of characters [[LENGTH|TRANSACTION|currency]] 4
LOWER-CASE replace all letters with their lower-case counterparts [[LOWER-CASE|TRANSACTION|currency]] euro
SUBSTRING return part of the string [[SUBSTRING(1,2)|TRANSACTION|currency]] U
TRIM remove leading and trailing white space [[TRIM|TRANSACTION|currency]] EURO
UNCAP-FIRST lower-case the first letter of the first word [[UNCAP-FIRST|TRANSACTION|currency]] eURO
UPPER-CASE upper-case the whole string [[UPPER-CASE|TRANSACTION|currency]] EURO
URL perform url escaping [[URL|TRANSACTION|currency]] EURO
 

Conditionals

The following table shows the available conditional functions (“test functions”) for use in [[IF...]] constructs:

name description example
CONTAINS test if a string attribute contains a constant string input: 'Maileon'
CONTAINS('l') = true
CONTAINS('m') = false
CONTAINS-IGNORE-CASE test if a string attribute contains a constant string, case insensitive input: 'Maileon'
CONTAINS-IGNORE-CASE('l') = true
CONTAINS-IGNORE-CASE('m') = true
CONTAINS-ANY test if a string contains any of a number of constant strings input: 'Maileon'
CONTAINS-ANY('m','e','x') = true
CONTAINS-ANY('mail','S','xkcd') = false
CONTAINS-ANY-IGNORE-CASE test if a string contains any of a number of constant strings, case insensitive input: 'Maileon'
CONTAINS-ANY-IGNORE-CASE('m','e','x') = true
CONTAINS-ANY-IGNORE-CASE('mail','S','xkcd') = true
CONTAINS-NONE test if a string does not contain any of a number of constant strings input: 'Maileon'
CONTAINS-NONE('u','S','D') = true
CONTAINS-NONE('e','S','D') = false
CONTAINS-NONE-IGNORE-CASE test if a string does not contain any of a number of constant strings, case insensitive input: 'Maileon'
CONTAINS-NONE-IGNORE-CASE('E','B','P') = false
CONTAINS-NONE-IGNORE-CASE('G','B','P') = true
ENDS-WITH test if a string ends with a given constant strings input: 'Maileon'
ENDS-WITH('eon') = true
ENDS-WITH('ile') = false
ENDS-WITH-ANY test if a string ends with any of a number of constant strings input: 'Maileon'
ENDS-WITH('eon','ile') = true
ENDS-WITH('Mail','eo') = false
ENDS-WITH-ANY-IGNORE-CASE test if a string ends with any of a number of constant strings, case insensitive input: 'Maileon'
ENDS-WITH-ANY('EON','ro') = true
ENDS-WITH-NONE test if a string does not end with any of a number of constant strings input: 'Maileon'
ENDS-WITH-NONE('BP','SD') = true
ENDS-WITH-NONE('eon','SD') = false
ENDS-WITH-NONE-IGNORE-CASE test if a string does not end with any of a number of constant strings, case insensitive input: 'Maileon'
ENDS-WITH-NONE-IGNORE-CASE('EON','sd') = true
ENDS-WITH-NONE-IGNORE-CASE('eue','sd') = false
EQUALS test string equality input: 'Maileon'
EQUALS('Maileon') = true
EQUALS('maileon') = false
EQUALS-IGNORE-CASE test string equality, case insensitive input: 'Maileon'
EQUALS-IGNORE-CASE('Maileon') = true
EQUALS-IGNORE-CASE('maileon') = true
NOT-EQUALS test string inequality, case sensitive input: 'Maileon'
NOT-EQUALS('Maileon') = false
NOT-EQUALS('maileon') = true
CSV-CONTAINS test if string contains a comma-separated-value element input: 'Maileon,XQueue'
CSV-CONTAINS('Maileon') = false
CSV-CONTAINS('maileon') = true
CSV-CONTAINS-ANY test if string contains any of a number of comma-separated-value elements input: 'Maileon,XQueue'
CSV-CONTAINS-ANY('XQueue','Maileon') = true
CSV-CONTAINS-ANY('Maileon','Alice') = true
CSV-CONTAINS-ANY-IGNORE-CASE test if string contains any of a number of comma-separated-value elements input: 'Maileon,XQueue'
CSV-CONTAINS-ANY-IGNORE-CASE('xqueue','maileon') = true
CSV-CONTAINS-ANY-IGNORE-CASE('maileon','Alice') = true
CSV-CONTAINS-NONE test if string does not contain any of a number of comma-separated-value elements input: 'Maileon,XQueue'
CSV-CONTAINS-NONE('XQueue','maileon') = false
CSV-CONTAINS-NONE('maileon','Alice') = true
CSV-CONTAINS-NONE-IGNORE-CASE test if string does not contain any of a number of comma-separated-value elements, case insensitive input: 'Maileon,XQueue'
CSV-CONTAINS-NONE-IGNORE-CASE('XQueue','maileon') = false
CSV-CONTAINS-NONE-IGNORE-CASE('maileon','Alice') = false
STARTS-WITH test if string starts with the given constant string input: 'Maileon'
STARTS-WITH('Mail') = true
STARTS-WITH('mail') = false
STARTS-WITH-IGNORE-CASE test if string starts with the given constant string, case insensitive input: 'Maileon'
STARTS-WITH-IGNORE-CASE('Mail') = true
STARTS-WITH-IGNORE-CASE('mail') = true
STARTS-WITH-ANY test if string starts with any of the given constant strings input: 'Maileon'
STARTS-WITH-ANY('XQ','Mail') = true
STARTS-WITH-ANY('XQ','mail') = false
STARTS-WITH-ANY-IGNORE-CASE test if string starts with any of the given constant strings, case insensitive input: 'Maileon'
STARTS-WITH-ANY-IGNORE-CASE('XQ','Mail') = true
STARTS-WITH-ANY-IGNORE-CASE('XQ','mail') = true
STARTS-WITH-NONE test if string does not start with any of the given constant strings input: 'Maileon'
STARTS-WITH-NONE('XQ','Mail') = false
STARTS-WITH-NONE('XQ','mail') = true
STARTS-WITH-NONE-IGNORE-CASE test if string does not start with any of the given constant strings, case insensitive input: 'Maileon'
STARTS-WITH-NONE-IGNORE-CASE('XQ','Mail') = false
STARTS-WITH-NONE-IGNORE-CASE('XQ','mail') = false
EXISTS test if value exists / is non-null input: 'Maileon'EXISTS = true
input: nullEXISTS = false
IS-NUMBER test if something is of type number input: 4IS-NUMBER = true
input: '4'IS-NUMBER = false
input: 'Maileon'IS-NUMBER = false
IS-BOOLEAN test if something is of type boolean input: falseIS-BOOLEAN = true
input: 'false'IS-BOOLEAN = false
input: 'Maileon'IS-BOOLEAN = false
EQ test number or string containing number for equality input: 3EQ(3) = true
input: '3'EQ(3) = true
input: 'Maileon'EQ(3) = false
NE test number or string containing number for inequality input: 3NE(3) = false
input: '3'NE(3) = false
input: 'Maileon'NE(3) produces a template error
LT test if number or string containing number is less than a given constant number input: 2LT(3) = true
input: '2'LT(3) = true
input: 'Maileon'LT(3) produces a template error
LE test if number or string containing number is less than or equal to a given constant number input: 2LE(3) = true
input: '3'LE(3) = true
input: 'Maileon'LE(3) produces a template error
GT test if number or string containing number is greater than a given constant number input: 4GT(3) = true
input: '4'GT(3) = true
input: 'Maileon'GT(3) produces a template error
GE test if number or string containing number is greater than or equal to a given constant number input: 4GE(3) = true
input: '3'GE(3) = true
input: 'Maileon'GE(3) produces a template error
HAS-NEXT item-specific condition that tests if a list item is not the last element of the list input list: ['a', 'b', 'c']
for item 'b'HAS_NEXT = true
for item 'c'HAS_NEXT = false
IS-ITEM-EVEN item-specific condition that tests if a list item has an index that is divisible by two input list: ['a', 'b', 'c']
for item 'a'IS-ITEM-EVEN = false
for item 'b'IS-ITEM-EVEN = true
IS-ITEM-ODD item-specific condition that tests if a list item has an index that is not divisible by two input list: ['a', 'b', 'c']
for item 'a'IS-ITEM-ODD = true
for item 'b'IS-ITEM-ODD = false
 

RSS2Email merge tags

The RSS2EMail extension allows sending e-mails once a pre-defined number of new entries have been added to an RSS / ATOM feed. The following example feed will be used for this documentation:

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>Cutlery sale</title>
    <description>This is an example feed used to explain RSS2Email merge tags.</description>
    <link>http://www.example.com/cutlery/index.html</link>
    <author>sales@example.com</author>
    <image>http://www.example.com/fork-and-knife.png</image>
    <category>Cutlery</category>

    <item>
      <title>Spoons are on sale!</title>
      <author>spoons.r.us@example.com</author>
      <category>Cutlery</category>
      <category>Spoons</category>
      <description>Get our wonderful spoons here.</description>
      <link>http://www.example.com/spoons-sale</link>
      <image>http://www.example.com/spoons/product.jpg</image>
      <guid>7bd204c6-1655-4c27-aeee-53f933c5395f</guid>
      <content>Spoon content goes here...</content>
    </item>
    
    <item>
      <title>Forks are on sale!</title>
      <author>forks.r.us@example.com</author>
      <category>Cutlery</category>
      <category>Forks</category>
      <description>Get our wonderful forks here.</description>
      <link>http://www.example.com/forks-sale</link>
      <image>http://www.example.com/forks/product.jpg</image>
      <guid>7bd204c6-1655-4c27-aeee-53f933c5395f</guid>
      <content>Forks content goes here...</content>
    </item>

  </channel>
</rss>
Feed properties  
Syntax {{feed: feed-property ( parameter )* }}
Description Displays a feed property.

-feed-property identifies the feed property to display. Valid values are authorcategoriesimagelink, and title

-parameter is one of the property parameters. Note that each property supports a different set of parameters and they need to be specified in the order given in the specific syntax for the property.

sender / recipient alias no
subject yes
text / html yes
Feed author  
Syntax {{feed:author
[ prefix= ( true | false )]
[ fallback=fb ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" ) ] }}
Description Displays the feed author.
Example
{{feed:author fallback="info@example.com" onmissingvalue=fallback}}

displays “sales@example.com” for the example RSS feed given above. If the feed author was not set, “info@example.com” would be displayed instead.

sender / recipient alias no
subject yes
text / html yes
Feed categories  
Syntax {{feed:categories [ separator="sep" ] }}
Description Displays the feed categories.
Example
{{feed:categories}}

displays “Cutlery” for the example RSS feed given above.

sender / recipient alias no
subject yes
text / html yes
Feed image  
Syntax {{feed:image
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" ) ]
[ backup= ( true | false ) ]
[ inline= ( true | false ) ]
[ htmltag= ( true | false ) ]
[ width ] [ height ] }}
Description Displays the feed image.
Example
{{feed:image onmissingvalue=ignore inline=true htmltag=true 300 200}}

produces the image at “http://www.example.com/fork-and-knife.png” as an inline image, with the width and height properties of the HTML img tag set to 300 and 200, respectively.

sender / recipient alias no
subject no
text / html yes
Feed link  
Syntax {{feed:link
[ prefix= ( true | false )]
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" ) ] }}
Description Displays the feed link.
Example
{{feed:link fallback="http://www.example.com" onmissingvalue=fallback}}

produces a link that redirects to “http://www.example.com/cutlery/index.html” for the example feed. If the feed link property was not set, a link redirecting to “http://www.example.com” would be generated instead.

sender / recipient alias no
subject yes
text / html yes
Feed title  
Syntax {{feed:title
[ prefix= ( true | false )]
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" ) ] }}
Description Displays the feed title.
Example
{{feed:title fallback="Forks &amp;amp; Spoons" onmissingvalue=fallback}}

produces “Cutlery sale” for the example feed. If the feed title property was not set, the text “Forks &amp; Spoons” would be produced instead.

sender / recipient alias no
subject yes
text / html yes
Feed item properties  
Syntax {{feed:item: item-property ( parameter )* }}
Description Displays a feed item property. Can only be used inside a feed loop construct.

-item-property identifies the feed item property to display. Valid values are authorcategoriesimagelinktitlecontent, and description.

-parameter is one of the property parameters. Note that each property supports a different set of parameters and they need to be specified in the order given in the specific syntax for the property.

sender / recipient alias no
subject yes
text / html yes
Looping over feed items (entries)  
Syntax {{feed:loop}}

{{feed:item:...}}

{{feed:end-loop}}
Description Iterate over the new feed entries. The syntax for retrieving individual properties of the entries is described separately below.
Example
{{feed:loop}}
  {{feed:item:title}}
{{feed:end-loop}}

produces the output

Spoons are on sale!
Forks are on sale!

for the example feed.

sender / recipient alias no
subject yes
text / html yes
Item author  
Syntax {{feed:item:author
[ prefix= ( true | false )]
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ] }}
Description Displays the feed author.
Example
{{feed:loop}}
  author: {{feed:item:author fallback="info@example.com" onmissingvalue="skip item"}} 
{{feed:end-loop}}

produces the output

author: spoons.r.us@example.com
author: forks.r.us@example.com

for the example feed. If the author property of the “spoons” entry was not set, only the second line would be output.

sender / recipient alias no
subject yes
text / html yes
Item link  
Syntax {{feed:item:link
[ prefix= ( true | false )]
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ] }}
Description Displays the item link.
Example
{{feed:loop}}
  {{feed:item:link fallback="http://www.example.com" onmissingvalue=fallback}}
{{feed:end-loop}}

produces the links given in the feed items, with “http://www.example.com” as a fallback value for each item.

sender / recipient alias no
subject yes
text / html yes
Item categories  
Syntax {{feed:item:categories [ separator="sep] }}
Description Displays the item categories.
Example
{{feed:item:categories separator=", "}}

displays “Cutlery, Spoons” and “Cutlery, Forks”, respectively, for the items of the example RSS feed.

sender / recipient alias no
subject yes
text / html yes
Item description  
Syntax {{feed:item:description
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ]
[ striphtml= ( true | false )]
[ backupimages= ( true | false )]
[ inline= ( true | false )]
[ tracklinks= ( true | false )] }}
Description Displays the item description.
Example
{{feed:loop}}
  {{feed:item:description}}
{{feed:end-loop}}

produces the output

Get our wonderful spoons here.
Get our wonderful forks here.
sender / recipient alias no
subject yes
text / html yes
Item content  
Syntax {{feed:item:content
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ]
[ striphtml= ( true | false )]
[ backupimages= ( true | false )]
[ inline= ( true | false )]
[ tracklinks= ( true | false )] }}
Description Displays the item content.
Example
{{feed:loop}}
  {{feed:item:content}}
{{feed:end-loop}}

produces the output

Spoon content goes here...
Forks content goes here...
sender / recipient alias no
subject yes
text / html yes
Item title  
Syntax {{feed:item:title
[ prefix= ( true | false )]
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ] }}
Description Displays the item title.
Example
{{feed:loop}}
  {{feed:item:title}}
{{feed:end-loop}}

produces the output

Spoons are on sale!
Forks are on sale!
sender / recipient alias no
subject yes
text / html yes
Item image  
Syntax {{feed:item:image
[ fallback="fallback" ]
[ onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) ]
[ backup= ( true | false ) ]
[ inline= ( true | false ) ]
[ htmltag= ( true | false ) ]
[ width ] [ height ] }}
Description Displays the item image.
Example
{{feed:loop}}
  {{feed:item:image}}
{{feed:end-loop}}

produces the images for the feed entries.

sender / recipient alias no
subject no
text / html yes
 

Property parameters

syntax description
prefix= ( true | false ) Only return the first word (word boundary is space) of the property.
fallback=fb if the property is not set, display fb instead
onmissingvalue= ( "fail" | "ignore" | "empty" | "fallback" | "skip item" ) What to do when the property is not set.

 

parameter value  
"fail" Produce a template error. This is the default behaviour.
"ignore" Produce the template expression (including merge tag syntax) and continue processing.
"empty" Produce no text and continue processing.
"fallback" Produce the fallback if one is given, otherwise behave as if "empty" was specified. If a fallback value is defined, specifying onmissingvalue=fallback is optional.
"skip item" If the property is undefined, skip the entire loop body. Only supported for feed item properties.
separator=”sep The string separator used to concatenate multiple categories into a single string. The default is "#".
htmltag= ( true | false ) Applies to image properties only. When set to true while generating an HTML document, an  tag is generated for the image URL.Otherwise, the image URL is returned instead. The default is false.
backup= ( true | false ) Applies to image properties only. Backup the image into the media repository and use the URL of the backed-up version instead of the original image. The default is false.
inline= ( true | false ) Applies to image properties only. Attach the image as part of the e-mail instead of linking to a web resource. The default is false.
width Applies to image properties only. The display width of the image in the generated HTML mailing.
height Applies to image properties only. The display height of the image in the generated HTML mailing.
striphtml= ( true | false ) Remove all HTML entities from item description or content. The default is true for non-HTML mailings, false otherwise.
backupimages= ( true | false ) Backup all images in the HTML content or description of an item into the media repository and use the URLs of the backed-up images in the emitted HTML code. The default is false.
tracklinks= ( true | false ) Convert all links in the HTML content or description of an item into tracking links. The default is false.
Inhaltsverzeichnis