126 lines
6.1 KiB
Markdown
126 lines
6.1 KiB
Markdown
# Setting up Nolimit News
|
|
|
|
<!-- nlnws:version 0.2.2 -->
|
|
|
|
## Installing it
|
|
|
|
| Needs | Version |
|
|
| --- | --- |
|
|
| WordPress | 5.9 or newer |
|
|
| PHP | 7.4 or newer |
|
|
| WooCommerce | not needed |
|
|
|
|
1. Download `nolimit-news.zip` from the
|
|
[latest release](https://gitea.nolimit.dk/kw/nolimit-news-dist/releases/latest).
|
|
2. **Plugins → Add New → Upload Plugin**, then activate.
|
|
3. Open **Newsletters** in the admin menu.
|
|
|
|
Later versions arrive in **Dashboard → Updates** like any other plugin: it
|
|
checks its own release feed and is never looked up on wordpress.org. The first
|
|
time you open its screen it offers to switch automatic updates on for it; that
|
|
is WordPress' own setting, in WordPress' own place, and you can say no.
|
|
|
|
## Making mail actually leave
|
|
|
|
This plugin hands every message to WordPress (`wp_mail()`), so mail leaves
|
|
however the rest of your site's mail leaves. On most hosting that is the
|
|
server's own mail function, which is often slow, rate-limited or marked as spam.
|
|
For a newsletter, set up a real sender first: an SMTP account or a mail service,
|
|
through any SMTP plugin, or Nolimit Send. Without that, a test send may arrive
|
|
in a spam folder or not at all, and a large send may be cut off by your host's
|
|
hourly limit. The screen tells you when mail fails: if the first five messages
|
|
in a row are refused, the send stops by itself rather than working through your
|
|
whole list.
|
|
|
|
Sending runs from WordPress' background scheduler (WP-Cron), one batch a minute.
|
|
On a quiet site that only runs when somebody visits, so a scheduled time means
|
|
"not before", never "exactly at". If WP-Cron is switched off on your site, the
|
|
Send screen says so, and your server has to call `wp-cron.php` itself.
|
|
|
|
## The first ten minutes
|
|
|
|
1. **Templates → How every issue looks.** Set the brand colour, the address of
|
|
a public logo image, and your postal address. The address is printed at the
|
|
foot of every mail: marketing mail is expected to say who sent it and where
|
|
they are. Pick the default template.
|
|
2. **Lists → New list.** Give it a name and a line about what people are signing
|
|
up for. Leave "Offer this list on signup forms" ticked for lists the public
|
|
may join; untick it for one you only fill yourself.
|
|
3. **Put the form on a page.** Add the *Newsletter signup* block, or the
|
|
shortcode `[nolimit_news_signup]`. With no list named, it offers every public
|
|
list.
|
|
4. **Write an issue.** On the Send tab, **Write a new issue**. It is the block
|
|
editor with only the blocks that survive an email program: paragraphs,
|
|
headings, lists, quotes, images, separators, columns, a button and a product
|
|
card. Open the *Add to the issue* panel and drag a product in, or click it.
|
|
5. **Preview, then send a test** to your own address. Look at it on a phone.
|
|
6. **Send now**, or **Send not before** a time. Pick the lists; a person on
|
|
several of them is mailed once.
|
|
|
|
When the last message has gone, the issue is published, which puts it in the
|
|
archive at `/newsletters/` on your site. The *Newsletter archive* block lists
|
|
the latest issues on any page.
|
|
|
|
## Checking that it works
|
|
|
|
* **A signup arrives as pending**, and you receive the confirmation mail. Follow
|
|
its link: a page with a button appears (a mail scanner that opens the link
|
|
cannot confirm anyone by accident), and pressing it makes the person
|
|
*subscribed*.
|
|
* **The unsubscribe link in a test send goes nowhere**, by design. In a real send
|
|
it takes one click, and the person is not mailed again.
|
|
* **Mailed N of N** on the issue's Send panel counts what was handed to your mail
|
|
system. It cannot know what the receiving servers did with it.
|
|
|
|
## Leaving Mailchimp
|
|
|
|
**Subscribers → Import** reads the CSV files Mailchimp lets you export. Do the
|
|
three separately:
|
|
|
|
* **Subscribed** people join as subscribed. You tick a box to say they agreed to
|
|
receive your newsletter.
|
|
* **Unsubscribed** people are recorded as unsubscribed, so no later import can
|
|
bring them back.
|
|
* **Cleaned** addresses are suppressed and mailed nothing.
|
|
|
|
Only the address and the name are read, and the file itself is not kept. A large
|
|
file is handled in steps; the screen says which row to carry on from. Imported
|
|
people stay visibly *not confirmed* until they follow a link, and **Ask the
|
|
imported people** mails them in batches of 50 to do exactly that. They stay
|
|
subscribed whether or not they answer.
|
|
|
|
## Opens, privacy and the law
|
|
|
|
Counting opens is **off** until you switch it on under *How every issue looks*.
|
|
Switching it on adds one invisible image to each mail and records, in your own
|
|
database, that this person's copy was opened. It is an estimate: some mail
|
|
programs load images for the reader and others never do. Switching it off stops
|
|
recording at once and removes the image from later mail. Nothing is ever sent to
|
|
anyone else.
|
|
|
|
Settings → Privacy → Policy Guide gets a paragraph that matches your choice.
|
|
Personal data exports and erasure requests from WordPress cover the lists: an
|
|
export includes the dates the person asked and confirmed, and an erasure deletes
|
|
the address and its consent records.
|
|
|
|
You are responsible for having consent to mail your list. The plugin helps by
|
|
keeping the proof: *confirmed* means the person followed their own link, and an
|
|
imported person who has not is shown as one you are asserting rather than one
|
|
you can show.
|
|
|
|
## Deleting it
|
|
|
|
Deactivating keeps your lists, subscribers and issues. **Deleting** the plugin
|
|
removes its tables, its settings and every issue, because the subscriber lists
|
|
hold personal data with no other owner. Export what you want first
|
|
(**Subscribers → Export these as CSV**).
|
|
|
|
## If something is wrong
|
|
|
|
| You see | It means |
|
|
| --- | --- |
|
|
| A template "was found and not used" | It broke a rule (a script, a link tag, a missing unsubscribe token). The message says which; fix that and save again. |
|
|
| *Stopped* with "The mail system said:" | Your mail setup refused the first messages. Fix it, then **Carry on where it stopped**; nobody is mailed twice. |
|
|
| `/newsletters/` shows a 404 | Open Settings → Permalinks and press Save once. |
|
|
| Scheduled issue did not go at the time | WP-Cron fires on a visit. Visit the site, or have the server call `wp-cron.php` every minute. |
|