Skip to content

Fully functional Open Source email marketing manager for creating, sending, integrating, and analysing email campaigns and newsletters.

License

AGPL-3.0, AGPL-3.0 licenses found

Licenses found

AGPL-3.0
LICENSE
AGPL-3.0
COPYING

phpList/phplist3

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

* Avoid php 8.2 warnings (#930)

* Avoid php warnings when run from command line

* Avoid php warning when template does not exist

* Avoid php 8 deprecation regarding string interpolation

* Improve handling of unknown admin to avoid php warnings and deprecations

* Avoid php 8.2 warning about dynamic properties

* Make the results of the timer class use period as the decimal point (#931)

* set DEFAULT_MESSAGE to 8 days (#932)

* Tidy-up output of processqueue (#935)

* Correct parameters to processQueueOutput()

* Replace $GLOBALS['I18N']->get() by s()

* Replace sprintf(s()) calls with simply s()

* remove obsolete files (#936)

* Allow gap between async requests (#937)

* Allow gap between async requests

* Include explanation of ASYNC_REQUEST_INTERVAL in config_extended.php

* When including a message in a template use the content of the body element if it is present instead of the complete message. (#938)

* Allow a plugin to update phplist (#946)

* Allow a plugin to update the phplist code

* When a new release is available link to a plugin if available in preference to the updater

* Revert "Use <wbr> element instead of zero-width space character to allow wrapping of an email address or URL (#926)" (#949)

This reverts commit 74682b0.

* Use <wbr> element instead of zero-width space character to allow wrapping of an email address or URL (#952)

Co-authored-by: Duncan Cameron <phplist@dcameron.me.uk>

* Update the Common, CKEditor, and Segment plugins (#951)

* fix bash issue

* Translations for 3.6.13 (#947)

* Translated using Weblate (English)

Currently translated at 91.2% (1944 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/en/

* Translated using Weblate (Polish)

Currently translated at 99.5% (2121 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/pl/

* Translated using Weblate (Portuguese)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/pt/

* Translated using Weblate (French)

Currently translated at 99.9% (2129 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (Galician)

Currently translated at 15.8% (338 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 20.7% (442 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 24.8% (530 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 25.8% (551 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 36.7% (784 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Spanish)

Currently translated at 98.9% (2108 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/es/

* Translated using Weblate (Galician)

Currently translated at 41.3% (882 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 44.5% (949 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 47.3% (1008 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 49.6% (1059 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 72.6% (1549 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 75.1% (1601 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 76.4% (1630 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 92.9% (1980 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 97.1% (2070 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 97.1% (2071 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 97.2% (2072 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (Galician)

Currently translated at 100.0% (2131 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/gl/

* Translated using Weblate (English)

Currently translated at 91.2% (1945 of 2131 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/en/

* Update dependencies (#895)

* Translated using Weblate (English)

Currently translated at 91.2% (1946 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/en/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 38.9% (830 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hans/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 39.7% (848 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hans/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 53.7% (1146 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hant/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 81.0% (1727 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hans/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 82.1% (1751 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hans/

* Translated using Weblate (Dutch)

Currently translated at 99.2% (2116 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/nl/

* Translated using Weblate (French)

Currently translated at 100.0% (2132 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/fr/

* Translated using Weblate (English)

Currently translated at 91.3% (1948 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/en/

* Translated using Weblate (German)

Currently translated at 95.2% (2030 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/de/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 82.0% (1749 of 2132 strings)

Translation: phpList/phpList3
Translate-URL: http://translate.phplist.org/projects/phplist/phplist3/zh_Hans/

---------

Co-authored-by: Duncan Cameron <phplist@dcameron.me.uk>
Co-authored-by: rysiek_d <ryszard.d79@gmail.com>
Co-authored-by: cflores <carlos.florest@gmail.com>
Co-authored-by: Alain Rihs <alainrihs@sunrise.ch>
Co-authored-by: dinahosting <comunicacion@dinahosting.com>
Co-authored-by: Michiel <michiel@phplist.com>
Co-authored-by: Duncan Cameron <3147688+bramley@users.noreply.github.com>
Co-authored-by: dayadiguo <dayadiguo@gmail.com>

* update version

* update to use the updater plugin

---------

Co-authored-by: Duncan Cameron <3147688+bramley@users.noreply.github.com>
Co-authored-by: Michiel Dethmers <michiel@phplist.com>
Co-authored-by: Duncan Cameron <phplist@dcameron.me.uk>
Co-authored-by: rysiek_d <ryszard.d79@gmail.com>
Co-authored-by: cflores <carlos.florest@gmail.com>
Co-authored-by: Alain Rihs <alainrihs@sunrise.ch>
Co-authored-by: dinahosting <comunicacion@dinahosting.com>
Co-authored-by: dayadiguo <dayadiguo@gmail.com>
3209434

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
May 24, 2023 16:43
May 24, 2023 16:43
May 24, 2023 16:43
January 24, 2022 19:36
January 29, 2023 15:37
November 13, 2020 19:46
June 28, 2014 15:17
July 25, 2019 11:20
March 10, 2015 14:22
May 14, 2020 13:43
February 1, 2017 22:03
March 12, 2015 15:55
April 22, 2023 19:31
June 28, 2014 14:58
September 16, 2019 10:00
May 24, 2023 16:43
July 5, 2021 20:57

CI GitHub tag (latest SemVer) License: AGPL v3 Translation status Docker Image Version (latest semver) Docker Pulls


Fully functional Open Source email marketing manager for creating, sending, integrating, and analysing email campaigns and newsletters: https://www.phplist.org

phpList includes analytics, segmentation, content personalisation, bounce processing, plugin-based architecture, and multiple APIs. Used in 95 countries, available in 20 languages, and used to send more than 25 billion campaign messages in 2018.

Deploy it on your own server, or get a hosted account at https://phplist.com.


Features

  • Responsive web-based, and command-line interfaces
  • Real-time analytics: track message responses and subscriber behaviour
  • Message-queue management: load-balances and throttles multiple accounts and campaigns; tracks every delivery outcome
  • Content personalisation: every message customised to individual subscriber attributes and preferences
  • Automated bounce management and processing: policy and regex-based handling with every bounce accessibly archived
  • Schedule, pause, resume, repeat, and requeue campaigns
  • Amazon SES: built-in optimised support
  • CSV and Excel based subscriber import and export, including attributes and preferences
  • Send a Webpage: automatic remote html polling, conversion, and dispatch
  • Email attachments support
  • Domain-based throttling: comply with host-specific policies by defining custom rules
  • RSS Feeds: phpList can be set up to read a range of RSS sources and send the contents on a regular basis to users. The user can identify how often they want to receive the feeds.

Get phpList

If you'd like to use phpList for your own campaigns, or you just want to try phpList out, there is no need to do all the work of installing it yourself. phpList Hosted is free to use, just sign up to get started.

If at a later time you do want to migrate from your own installation to phpList Hosted, or vice versa, your data can be migrated.

Alternatively, you can try out the latest phpList release at phplist.org. This installation is wiped and refreshed every hour.


Upgrade

For users

See Upgrading a manual installation

For developers

'Use translate.phplist.org to translate the phpList admin interface.' How to upgrade from any previous version to the latest version

How to upgrade from any previous version to the latest version

BACKUP your database (e.g. `mysqldump -u[user] -p[password] [database] > phplist-backup.sql`)

Copy your old configured files to some safe place

These files are:

  • lists/config/config.php
  • possibly lists/texts/english.inc or any other language.inc if you have edited it
Copy the files from the tar file to your webroot.

You can copy everything in the lists directory in the tar file to your website. To facilitate future upgrades, ie to make it easier for you to simply copy everything I have now put the "configurable" files in their own directory. They reside in "lists/config". This is hopefully going to be the directory that you can keep between upgrades, and that will contain the only information that you want to be changed in order to make it work for your own site.

Copy your configuration files to lists/config or re-edit the new config file sometimes new features are added to the config file, so it's better to use the new config file and re-adapt it to your situation.

An example .htaccess exists file in this directory. You should not allow access to this directory from the webserver at all. The example will work with apache.

You can overwrite the files that are there. They are example files.

Go to `http://yourdomain/lists/admin/` and choose the 'Upgrade' link

Click the link on this page.
This process may take quite a while if your database is large. Don't interrupt it.

Issues

Report issues to GitHub Issues and, if applicable, add the respective label.

Languages, Info files and Contextual help

In the directory phplists/lists/texts you will find existing translations of the public pages of phpList. You can use them in your config file to make the frontend of the system appear in the language of your choice.

In the config file there are a lot of choices to make about your particular installation. Make sure to read it carefully and step by step work your way through it. A lot of information is provided with each step.

Themes

phpList comes with Trevelin theme on default. Older versions than 3.4.6, include additionally Dressprow which is not currently maintained. Patches to Dressprow theme are still welcomed. Both themes are available for installation via GitHub.

To get the latest copy of each theme you should clone them individually into public_html/lists/admin/ui/ For the prerequisites of each and Installation guide on your development copy make sure you check the README files of the repos.

Code of Conduct

This project adheres to a Contributor Code of Conduct. By participating in this project and its community, you are expected to uphold this code.

License

phpList 3 is licensed under the terms of the AGPLv3 Open Source license and is available free of charge.