Template Language
Although
you don’t have to use it in order to send emails with MailChimp, our
template language is a powerful, easy way to code your own email
templates that are reusable and editable from within the application.
Each editable CSS ruleset opens with the declaration block:
Creating Editable Areas
mc:edit
mc:edit
is used to provide a content-editing action for a particular element within a template.- Adding
mc:edit="$unique_name"
to an HTML element allows you to add content or code from within the MailChimp campaign editor. - The name used in mc:edit must be unique.
mc:edit=""
should be used on a div, table cell, or any other element that can be considered a ‘container.’mc:edit
should be placed on an<img>
element. This will allow the app to call up an image upload and editing dialogue.- The name you assign via
mc:edit="$unique_name"
is used to create a field in the database to store the user’s content. If the user switches templates after writing content, they could lose their copy if the editable space names aren’t consistent. The following naming conventions are a good rule of thumb for common content areas:mc:edit="header"
— Use this to name your email header.mc:edit="header_image"
— Use this to name an editable header image.mc:edit="sidebar"
— Use this to name an editable left- or right-side column.mc:edit="body"
— Use this to name the main content space of your email.mc:edit="footer"
— Use this to name your email footer.
- A few things to watch out for when using mc:edit to create editable areas:
- You shouldn’t nest editable elements within other editable elements.
- You shouldn’t place editable images within an editable content container.
- Any content added within an editable window is tied to the name used in the
mc:edit
tag. If you change the name after saving the content to a template, you’ll lose the content.
mc:hideable
mc:hideable
is used to provide a hide/show action for a particular element within a template.- Syntax:
mc:hideable
- Use
mc:hideable
on any HTML element - Avoid placing the
mc:hideable
tag on an element that already has anmc:repeatable
tag. - When an element is hidden, it will not be visible when the email is sent from MailChimp.
- There are no restrictions on the use of
mc:hideable
. Any element can be hidden. - There’s no need to add a namespace to the
mc:hideable
tag (IE:mc:hideable=“$name”
) - If you’re editing hideable sections in the campaign builder using your template’s remove button, note that the section won’t disappear in the editor screen. The section you want to remove will fade, but remain—just in case you change your mind and want to use the space. However, when you send out your email, the section you have “removed” won’t appear in your campaign. You can preview this change by clicking on popup preview.
- The remove and hide section buttons don’t offer the same functionality in the template editor. In fact, you can’t actually remove anything while working in the template editor. If you need to make changes like that, we suggest you work in the campaign builder instead.
mc:repeatable
mc:repeatable
is used to provide a duplication action for a particular element within a template.- Syntax:
mc:repeatable
- Use
mc:repeatable
on any HTML element mc:repeatable
elements can be nested within each other, but use care if you’re going to do this. We don’t encourage this use.
mc:label
mc:label
is an optional tag used to name an editable section within the application.- Syntax:
mc:label=“header_image”
- Use
mc:label
on anymc:edit
element - If no
mc:label
name is specified, the app will use the name from themc:edit
tag instead.
mc:variant
mc:variant
is used to provide a way to switch between discrete blocks of HTML.mc:variant
must be used in conjunction withmc:repeatable
.- Syntax: mc:repeatable=“product” mc:variant=“content with left image”
- Use
mc:variant
on any discrete HTML elements you wish to switch between mc:variant
blocks should not be nested within each other.mc:variant
blocks must be adjacent to each other in HTML:
<!-- // Begin Module: Left Image with Right Content \\ -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" mc:repeatable="image_with_content" mc:variant="content with left image">
<tr>
<td align="center" valign="top">
<img src="..." mc:edit="left_image" />
</td>
<td valign="top">
<div mc:edit="right_content">
<h4 class="h4">Heading 4</h4>
Lorem ipsum dolor sit amet.
</div>
</td>
</tr>
</table>
<!-- // End Module: Left Image with Right Content \\ -->
<!-- // Begin Module: Right Image with Left Content \\ -->
<table border="0" cellpadding="0" cellspacing="0" width="100%" mc:repeatable="image_with_content" mc:variant="content with right image">
<tr>
<td valign="top">
<div mc:edit="left_content">
<h4 class="h4">Heading 4</h4>
Lorem ipsum dolor sit amet.
</div>
</td>
<td align="center" valign="top">
<img src="..." mc:edit="right_image" />
</td>
</tr>
</table>
<!-- // End Module: Right Image with Left Content \\ -->
Defining Editable CSS
Style Declaration Block
Style declaration blocks share a basic structure regardless of the element style targeted. In this example, H1 tag styling is declared:/**
* @tab Page
* @section heading 1
* @tip Set the styling for all first-level headings in your emails.
* @style heading 1
*/
h1{
/*@editable*/ color:#202020 !important;
display:block;
/*@editable*/ font-family:Arial;
/*@editable*/ font-size:34px;
/*@editable*/ font-weight:bold;
/*@editable*/ line-height:100%;
/*@editable*/ text-align:left;
}
/**
* @tab Page
* @section heading 1
* @tip Set the styling for all first-level headings in your emails.
* @style heading 1
*/
- “@tab” defines a tab under which you can organize several editable styles. It’s best used for high-level groups like “header,” “sidebar,” or “footer.” @tab is required.
- “@section” defines a subsection within a tab. It’s best used for narrow-focus groups such as “body content,” “footer links,” or “background colors.” @section can encompass styles from several different elements or areas (“@section body,” for example, can have styles for the background color of the table, along with text and link styles.) @section is optional, but highly recommended.
- “@tip” allows for a tooltip to show when the tab for its section is selected. @tip is optional.
- “@style” allows you to add a ruleset’s styles to the drop-down menu in the campaign text editor window. This facilitates the quick application of specific CSS to any selected text. @style should only be used on text styles. @style is optional.
h1{
/*@editable*/ color:#202020 !important;
display:block;
/*@editable*/ font-family:Arial;
/*@editable*/ font-size:34px;
/*@editable*/ font-weight:bold;
/*@editable*/ line-height:100%;
/*@editable*/ text-align:left;
}
- “@editable” is required on each style intended to be edited in MailChimp’s campaign builder.
0 comments:
Post a Comment