Customize campaigns-template for sunfloweracressoaps.com
Sync campaigns / sync (push) Successful in 16s

Restyle the email template to Sunflower Acres' forest green/cream/sun
yellow brand, rename the default listmonk template, replace the README
with client-specific instructions, and add a real welcome campaign.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-30 07:33:59 -04:00
parent 88f62c7e09
commit 678080f7c4
4 changed files with 71 additions and 67 deletions
+31 -29
View File
@@ -1,14 +1,14 @@
<!--
Listmonk's own stock campaign template (static/email-templates/default.tpl
in knadh/listmonk), committed here verbatim as a known-good, unsubscribe-
capable starting point rather than something invented from scratch. Synced
into listmonk via `campaigns template <name> email-templates/campaign.html`
(see internal/campaign/template.go) as the is_default campaign template, so
every campaign this tool creates gets a real unsubscribe link/footer without
per-campaign template_id wiring. Restyle freely — the two load-bearing tags
are `{{ template "content" . }}` (where the campaign body gets injected) and
`{{ UnsubscribeURL }}` (the actual unsubscribe link); everything else here is
just Listmonk's default look.
Based on Listmonk's own stock campaign template (static/email-templates/
default.tpl in knadh/listmonk), restyled to sunfloweracressoaps.com's palette
(forest green / cream / sun yellow — see will/sunfloweracres-site's
assets/css/style.css for the canonical values). Synced into listmonk via
`campaigns template <name> email-templates/campaign.html` (see internal/
campaign/template.go) as the is_default campaign template, so every campaign
this tool creates gets a real unsubscribe link/footer without per-campaign
template_id wiring. The two load-bearing tags are `{{ template "content" . }}`
(where the campaign body gets injected) and `{{ UnsubscribeURL }}` (the
actual unsubscribe link).
-->
<!doctype html>
<html>
@@ -19,56 +19,58 @@ just Listmonk's default look.
<base target="_blank">
<style>
body {
background-color: #F0F1F3;
font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
background-color: #2C4F2F;
font-family: Seravek, 'Gill Sans Nova', 'Gill Sans', 'Segoe UI', system-ui, sans-serif;
font-size: 15px;
line-height: 26px;
margin: 0;
color: #444;
color: #F3EEDC;
}
pre {
background: #f4f4f4f4;
background: #375E3B;
padding: 2px;
}
table {
width: 100%;
border: 1px solid #ddd;
border: 1px solid #4F7048;
}
table td {
border-color: #ddd;
border-color: #4F7048;
padding: 5px;
}
.wrap {
background-color: #fff;
background-color: #375E3B;
padding: 30px;
max-width: 525px;
margin: 0 auto;
border-radius: 5px;
border: 1px solid #4F7048;
}
.button {
background: #0055d4;
background: #E7A62E;
border-radius: 3px;
text-decoration: none !important;
color: #fff !important;
color: #2E2008 !important;
font-weight: bold;
padding: 10px 30px;
display: inline-block;
}
.button:hover {
background: #111;
background: #7A4A28;
color: #F3EEDC !important;
}
.footer {
text-align: center;
font-size: 12px;
color: #888;
color: #CBC1A2;
}
.footer a {
color: #888;
color: #CBC1A2;
margin-right: 5px;
}
@@ -82,10 +84,10 @@ just Listmonk's default look.
}
a {
color: #0055d4;
color: #A9C99B;
}
a:hover {
color: #111;
color: #C3DBB2;
}
@media screen and (max-width: 600px) {
.wrap {
@@ -97,17 +99,17 @@ just Listmonk's default look.
}
</style>
</head>
<body style="background-color: #F0F1F3;font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #444;">
<body style="background-color: #2C4F2F;font-family: Seravek, 'Gill Sans Nova', 'Gill Sans', 'Segoe UI', system-ui, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #F3EEDC;">
<div class="gutter" style="padding: 30px;">&nbsp;</div>
<div class="wrap" style="background-color: #fff;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;">
<div class="wrap" style="background-color: #375E3B;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;border: 1px solid #4F7048;">
{{ template "content" . }}
</div>
<div class="footer" style="text-align: center;font-size: 12px;color: #888;">
<div class="footer" style="text-align: center;font-size: 12px;color: #CBC1A2;">
<p>
<a href="{{ UnsubscribeURL }}" style="color: #888;">{{ L.T "email.unsub" }}</a>
<a href="{{ UnsubscribeURL }}" style="color: #CBC1A2;">{{ L.T "email.unsub" }}</a>
&nbsp;&nbsp;
<a href="{{ MessageURL }}" style="color: #888;">{{ L.T "email.viewInBrowser" }}</a>
<a href="{{ MessageURL }}" style="color: #CBC1A2;">{{ L.T "email.viewInBrowser" }}</a>
</p>
</div>
<div class="gutter" style="padding: 30px;">&nbsp;{{ TrackView }}</div>