Release status: experimental
|Description||Adds a preference for newsletter subscription.|
|Author(s)||Tina Johnson, Tony Thomas|
|Latest version||1.2.0 (2013-09-10)|
|PHP||5.4 or later|
|License||GNU General Public License 2.0 or later|
Translate the Newsletter extension if it is available at translatewiki.net
|Check usage and version matrix.|
|Open tasks · Report a bug|
The Newsletter extension provides a catalog of newsletters registered in a given wiki, an easy way for publishers to announce new issues, and an easy way for users to subscribe/unsubscribe and be notified via web or email when new issues are announced. For user documentation, check Help:Extension:Newsletter.
For the purposes of this project, a "newsletter" is assumed to be a publication that has a name, a wiki home page, and a single or central wiki page for each issue or edition.
This extension is under development, and has a test instance at http://newsletter-test.wmflabs.org/
This extension was created in 2013, then modified heavily as part of a Google Summer of Code 2015 project. Its development team is formed mostly by volunteers, and we welcome new contributors. Our goal is to deploy this extension in Wikimedia. Check the ongoing work in our Phabricator workboard.
After a lot of additional work by other contributors, it was made available to Wikimedia users on July 2017.
- List of newsletters that are registered with the service, with their basic information, generated automatically.
- Registered users can subscribe to newsletters in order to receive notifications about new issues announced, via web or email, according to their Echo preferences. It is not expected to offer delivery to user talk pages.
- Registered users can check the newsletters they have subscribed to, and they can unsubscribe.
- Registered users can add existing newsletters to the system (which is referred to as "CreateNewsletter"). They must provide the title of the newsletter; a link to an existing wiki page that serves as main page; and a description.
- Publishers can announce issues for newsletters that have been added into the system via Special:CreateNewsletter. Echo (?) notifications are sent to subscribers when an issue is announced.
- Administrators and other users granted the rights can add and remove publishers. Administrators must provide the name of the newsletter and username of the publisher. (This is (?) separate from Special:UserRights; the right exists only in relation to a specific newsletter.)
- Install Echo - Newsletter extension makes use of Echo notifications to notify subscribed users of new issues when announced by the newsletters, and to notify new publishers and subscribers added.
- In order be registered with the service, a newsletter must have a name, a central "home page", and at least one user assigned to the "publisher" role; and in order to publish issues/editions and issue notifications, each issue must have its own page (or central page, such as a table of contents).
- Download and place the file(s) in a directory called
- Add the following code at the bottom of your LocalSettings.php:
wfLoadExtension( 'Newsletter' );
- Run the update script which will automatically create the necessary database tables that this extension needs.
- Done - Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
By default, only users in 'sysop' group have this permissions. You can set up the user rights in
|newsletter-create||Create a new newsletter|
|newsletter-delete||Delete an existing newsletter|
|newsletter-manage||Add or remove publishers and subscribers from an existing newsletter|
For example, the following configuration would allow any user to do anything they want with the Newsletter extension, such as creating a new newsletter, deleting an existing newsletter, or managing an existing newsletter by adding or removing publishers.
$wgGroupPermissions['*']['newsletter-create'] = true; $wgGroupPermissions['*']['newsletter-delete'] = true; $wgGroupPermissions['*']['newsletter-manage'] = true; $wgGroupPermissions['*']['newsletter-restore'] = true;