Minitek Content Notifications

Minitek Content Notifications is a Joomla extension that allows users to subscribe to content and receive notifications about content changes. Users (guests and members) can subscribe to notifications about the following types of events:

  • Article has been created
  • Article has been updated

Joomla Content Compatibility

  • Users can follow specific Content Categories and receive notifications for new articles and articles updates.
  • Users can follow specific Content Authors and receive notifications for new articles and articles updates.
  • Users can follow specific Content Tags and receive notifications for new articles and articles updates.
  • Users can follow specific Content Articles and receive notifications for updates.

K2 Content Compatibility

  • Users can follow specific K2 Categories and receive notifications for new articles and articles updates PRO.
  • Users can follow specific K2 Authors and receive notifications for new articles and articles updates PRO.
  • Users can follow specific K2 Tags and receive notifications for new articles and articles updates PRO.
  • Users can follow specific K2 Articles and receive notifications for updates PRO.
  Features that are only available in the Pro version are displayed with the label: PRO

Minitek Content Notifications consists of 2 extensions:

  1. Minitek Content Notifications component
  2. Minitek Content Notifications system plugin

Both extensions must be installed and enabled.

To install Minitek Content Notifications:

  1. Login to Joomla administrator control panel.
  2. Navigate to Extensions > Manage > Install.
  3. Install both the component and the system plugin.
  4. Navigate to Extensions > Plugins and enable the plugin System - Minitek Content Notifications.

Important when upgrading free version to commercial version

If you install the commercial version over the free version then you must go to Extensions > Manage > Update Sites, enter Minitek Content Notifications in the search field and delete the Update Site of the free version. If you don't do that you will overwrite the Pro version with the Free version while updating.

  This section applies only to the Pro version of the extension. The free version can be updated without authentication.

The extension must be authenticated before you can update it. To authenticate and update Minitek Content Notifications:

  1. Go to Downloads Section and download the latest version of the plugin Minitek Updates Authentication.

  2. Install the plugin in your website via Extension Manager.

  3. Open the plugin, publish it and paste your Download ID into the Download ID parameter. Click on Save & Close.

    (You can find your Download ID here)

  4. That's it! The extension will now notify you whenever there is a new version released. Please note that you will be able to receive updates only for the duration of your subscription at Minitek.gr.

1. Shortcodes

Shortcodes can be inserted anywhere (article text, custom html module, php file). The shortcodes render the subscription boxes that allow users to subscribe to various objects (articles, categories, tags, authors).

Example of a subscription box:

2. Users subscribe to objects

Users can follow or block specific articles, categories, tags and authors. When a user is following a specific object, he will receive updates and/or email notifications for new articles or article updates in that specific object (eg. category, tag or author).

3. Create notification events

Whenever you create a new article from the backend or edit an existing article, you will be able to create a notification event for this content change.

New notification events will appear as Pending in the notification events list.

Each notification event will create 2 separate notification types:

1. Updates

Updates are internal notifications that are displayed in the pages: My Updates, Updates.

2. Emails

Emails are added to the email queue and contain information about the specific content change.

Neither Updates nor Emails have been created at this stage. Notification events must be processed first.

4. Process notification events

Processing a notification event is done automatically via Scheduled tasks. When a notification event is processed, Updates are created and Emails are added to the email queue. All users that have subscribed to the object (article) of the notification event (or to a parent of that article: category, tag, author) will see the updates in their personalized My Updates page.

Also, Emails will be created and added to the email queue for all users that have selected to receive email notifications for the object (article) of the notification event or for a parent of that object (category, tag, author).

At this stage, Updates have been created but Emails are not sent yet to the subscribers.

5. Send emails

Emails are sent to the subscribers automatically via Scheduled tasks.

At this stage, Updates have been created and Emails have been sent. The notification is marked as completed.

As mentioned earlier, shortcodes can be inserted anywhere (article text, custom html module, php file). The shortcodes render the subscription boxes that allow users to subscribe to various objects (articles, categories, tags, authors).

A shortcode has the following format:

{mcnotifications
  • title="CUSTOM_TEXT"
  • layout="default"
  • option="com_content"
  • item="ITEM_ID" item_params="f,b,e,t"
  • category="CATEGORY_ID" category_params="f,b,c,e,t"
  • tag="TAG_ID" tag_params="f,b,e,t"
  • author="AUTHOR_ID" author_params="f,b,e,t"
}
Line breaks in the shortcode are used for formatting clarity only. You should not have line breaks in your shortcode.

Parameters

title="CUSTOM_TEXT"

Optional. Adds a custom title to the subscription box. Replace "CUSTOM_TEXT" with your own text. Do not use spaces, only underscores. You can translate this text in Extensions > Language(s) > Overrides.

layout="default"

Optional. Defines the subscription box layout. Can be "default" or "dropdown".

option="com_content"

Required. Defines the object component. Use "com_content" for Joomla content and "com_k2" for K2 content.

item="ITEM_ID"

Optional. The ID of a specific article. If you enter the value "auto" instead of a specific ID, the extension will automatically find the ID of the article. Note that "auto" works only if the currently viewed page is an article page.

item_params="f,b,e,t"

Optional. Required if item is defined in the shortcode. Defines what will be displayed in the subscription box in the item section.

  • f: Enables the Follow button
  • b: Enables the Block button
  • e: Enables the Receive emails checkbox
  • t: Displays the article title
category="CATEGORY_ID"

Optional. The ID of a specific category. If you enter the value "auto" instead of a specific ID, the extension will automatically find the ID of the category. Note that "auto" works only if the currently viewed page is a category page.

category_params="f,b,c,e,t"

Optional. Required if category is defined in the shortcode. Defines what will be displayed in the subscription box in the category section.

  • f: Enables the Follow button
  • b: Enables the Block button
  • e: Enables the Follow children checkbox
  • e: Enables the Receive emails checkbox
  • t: Displays the category title
tag="TAG_ID"

Optional. The ID of a specific tag. If you enter the value "auto" instead of a specific ID, the extension will automatically find the ID of the tag. Note that "auto" works only if the currently viewed page is a tag page.

tag_params="f,b,e,t"

Optional. Required if tag is defined in the shortcode. Defines what will be displayed in the subscription box in the tag section.

  • f: Enables the Follow button
  • b: Enables the Block button
  • e: Enables the Receive emails checkbox
  • t: Displays the tag title
author="AUTHOR_ID"

Optional. The ID of a specific author. If you enter the value "auto" instead of a specific ID, the extension will automatically find the ID of the author. Note that "auto" works only if the currently viewed page is an author page.

author_params="f,b,e,t"

Optional. Required if author is defined in the shortcode. Defines what will be displayed in the subscription box in the author section.

  • f: Enables the Follow button
  • b: Enables the Block button
  • e: Enables the Receive emails checkbox
  • t: Displays the author name

Examples

1. Subscribe to an article

Shortcode used:

{mcnotifications layout="default" option="com_content" item="auto" item_params="f,b,e,t"}

Output:

2. Subscribe to an article and/or a category

Shortcode used:

{mcnotifications layout="default" option="com_content" item="145" item_params="f,b,e,t" category="63" category_params="f,e,t"}

Output:

3. Subscribe to a category

Shortcode used:

{mcnotifications layout="default" option="com_content" category="auto" category_params="f,b,t"}

Output:

4. Subscribe to a tag

Shortcode used:

{mcnotifications layout="dropdown" option="com_content" tag="auto" tag_params="f,b,e,t"}

Output:

5. Subscribe to an article and/or a tag

Shortcode used:

{mcnotifications layout="default" option="com_content" item="23" item_params="f,b,e,t" tag="45" tag_params="f,b,e,t"}

Output for non-logged in users:

6. Subscribe to an author

Shortcode used:

{mcnotifications layout="default" option="com_content" author="356" author_params="f,e,t"}

Output:

7. Inside a PHP file

You can also use shortcodes inside PHP files and insert IDs dynamically. For example:

{mcnotifications layout="default" option="com_content" item="<?php echo $item_id; ?>" item_params="f,b,e,t"}

Permissions

The subscription buttons visibility and functionality can be independently configured for each separate user group in the component permissions settings.

Action: View Subscribe buttons

If this setting is disabled, the subscription box will not be available for users of this user group.

Action: Subscribe

If this setting is disabled, users of this user group will not be able to subscribe even if the subscription box is visible.

Important

If you allow guests (non-logged in users) to subscribe, instead of the Follow and Block buttons, guests will see two text inputs (name & email) and a Subscribe button. Both the name and the email are required for a subscription. Note that guests can't block objects, they can only follow them when they subscribe.

After clicking on the Subscribe button, guests will see a popup message prompting them to check their email for a verification message. Before activating their subscription, guests must click on the verification link found in the email that has been automatically sent to them. If they don't click on the verification link, their subscription will remain unpublished. Verification links don't expire.

The standard output of the subscription box can be overridden by adding code to the html directory of your template.

To override the output of the Minitek Content Notifications - System plugin:

  1. Create a folder named

    templates/your_template/html/plg_system_mcnsystem/
  2. Copy the original layout files

    plugins/system/mcnsystem/tmpl/default.php
    plugins/system/mcnsystem/tmpl/dropdown.php

    to the new override folder

    templates/your_template/html/plg_system_mcnsystem/default.php
    templates/your_template/html/plg_system_mcnsystem/dropdown.php

Now you can edit the layout files to override the plugin output.

Follows

Displays all follows of current logged-in user in a list. User can delete records from the list if the respective user group has access to the "Delete" action.

Blocks

Displays all blocks of current logged-in user in a list. User can delete records from the list if the respective user group has access to the "Delete" action.

My Updates

Displays all updates of current logged-in user in a list. User can delete records from the list if the respective user group has access to the "Delete" action.

Updates

Displays all updates for articles of selected categories in a list.

To define specific categories for the updates, open the menu item "Updates" and click on the tab "Updates source". In the fields "Content categories" and "K2 categories", select the categories of your choice and click on "Save & Close".

In Minitek Content Notifications, email templates can contain plain text or HTML markup and are used as templates for the emails that are sent to the subscribers. Every single email that is added to the email queue is constructed from the email template that is assigned to the respective notification event.

Email templates can contain any of the following placeholders. Placeholders are special text strings that are dynamically replaced by the appropriate content when an email is constructed and added to the email queue.

Placeholders Description
[NOTIFICATION_DATE] Date of notification event.
[RECIPIENT_NAME] Name of email recipient.
[OBJECT_ID] ID of notification object.
[OBJECT_TITLE] Title of notification object.
[OBJECT_URL] Front-end URL of notification object.
[AUTHOR_NAME] Name of notification object author.
[AUTHOR_URL] Front-end URL of notification object author. For K2 items only. Does not apply for Joomla articles.
[PARENT_TITLE] Title of notification object parent. Depends on user subscription type (category, author, tag). Does not apply if user has subscribed directly to an article.
[PARENT_URL] Front-end URL of notification object parent.
[SITE_NAME] Site name.
[SITE_URL] Site URL.
[UNSUBSCRIBE_URL] Unsubscribe URL.

Default email templates

Default email templates are automatically assigned to a notification event according to the notification event type and language. For example, if you have created a notification event for an article that is available only in english (en-GB), then the email template of that specific language (en-GB) will be assigned automatically to that notification event.

If an email template for a particular language does not exist, then the email template with language "All" will be used by default.

Info

In multi-language sites, the most recent and published default email template for a specific language will be used as an email template for that language.

Custom email templates

Custom email templates are very handy when you want to create email notifications with special content. Instead of editing the default email templates every time, you can create as many custom email templates as you want and use them instead.

Info

Custom email templates inherit language settings from the parent notification event.

Creating notification events

Creating a notification event automatically

As discussed earlier, whenever you create a new article or edit an existing article from the backend, you will be able to create a notification event for this content change. The Minitek Content Notifications - System plugin automatically adds a box containing a checkbox with the label "Create a new notification event for this item after saving".

If you check this checkbox and save the article, a new notification event will be created. You can also select to publish or unpublish the new notification event. Typically you would create the notification event in an unpublished state if you wanted to modify it first before the system automatically processes it. You can also disable the notification updates for this specific notification event by checking the checkbox "Disable Updates" or you can disable the notification emails for this specific notification event by checking the checkbox "Disable Emails".

In the field "Custom update content" you can add a custom description (HTML allowed) that will be displayed in the Updates list in the front-end. If you leave this blank, the item introtext will be used as update content. Please note that this custom content is not the content of the email notification. The content of the email notification is created by the email templates.

New notification events will appear in the notification events list. At this stage, both Updates and Email queue will appear as Pending.

Creating a notification event manually

A notification event can also be created manually with the following method:

  1. Go to Components > Content Notifications > Notification events and click on "New"

  2. General settings

    Title
    The title of the notification event. For internal use only. Will not be used in updates or emails.
    Type
    The type will define the appropriate default email template for this notification.
    Access
    Only users of this level will receive the updates/emails.
    Language
    Only users of this language will receive the updates/emails.
  3. Object settings

    The object (article) of the notification event.

    Component
    Select one of the available components. In the free version you can only select Joomla content. In the Pro version you can also select K2 articles.
    Joomla Article
    Select a Joomla Article.
    K2 Item
    Select a K2 Item.
  4. Email settings

    An email notification will be sent to all subscribed users who have selected to receive emails for this item or for the parents of this item (category, author, tag).

    Email Queue Status
    If the email queue has not been created yet, it will appear as "Pending". If the email queue has already been created, it will appear as "Completed". If you don't want to send emails for this notification event, select "Disabled".
    Email Template
    If "Default (auto)" is selected, a default email template will be automatically assigned according to the notification event type and language.
  5. Updates settings

    An update notification will be displayed in My Updates page for all users who have subscribed to this item or to the parents of this item (category, author, tag).

    Updates Status
    If the updates have not been created yet, it will appear as "Pending". If the updates have already been created, it will appear as "Completed". If you don't want to create updates for this notification event, select "Disabled".
    Update content
    Optional. This custom content will be displayed in the Updates feed. If left empty, the article introtext will be used instead.
  6. Publishing settings

    Created Date
    Optional. The notification event creation date. If left empty, it will be automatically filled with current date.
    Start Publishing
    An optional date to start publishing the notification. You can use this field to schedule the notification event processing in the future.
    Finish Publishing
    An optional date to finish publishing the notification.

Processing notification events

As discussed earlier, processing a notification event is done automatically via Scheduled tasks. When a notification event is processed, Updates are created and Emails are added to the email queue. All users that have subscribed to the object (article) of the notification event (or to a parent of that object: category, tag, author) will see the updates in their personalized My Updates page.

Also, Emails will be created and added to the email queue for all users that have selected to receive email notifications for the object (article) of the notification event or for a parent of that object (category, tag, author).

Scheduled tasks

Before setting up the scheduled tasks, you must first go to Minitek Content Notifications dashboard in the administrator area and click on the "Configuration" button at the top right of the page. Under the tab "Scheduled Tasks" you will find the option "Password". In that box you have to enter a password which will allow your CRON job to access the required front-end urls. After you're done, click the "Save & Close" button on top to save the settings.

Important

Use only lower and upper-case alphanumeric characters (0-9, a-z, A-Z) in your password.

Now it's time to set up the actual scheduled tasks (CRON jobs) in your hosting control panel. Log in to your hosting control panel and search for a section called "CRON Jobs", "Scheduled tasks" or something similar. If you can't find it, ask for help from your hosting provider.

Warning

If your host only supports entering a URL in their "CRON" feature, this will most likely not work with Minitek Content Notifications. There is no workaround. It is a hard limitation imposed by your host. We would like to help you, but we can't.

Create updates command line (wget)

wget -O --max-redirect=10000 /dev/null "http://www.yourdomain.com/index.php?option=com_contentnotifications&task=notifications.createUpdates&password=YOUR_PASSWORD"

where YOUR_PASSWORD is the password that you entered previously in the component configuration.

Create email queue command line (wget)

wget -O --max-redirect=10000 /dev/null "http://www.yourdomain.com/index.php?option=com_contentnotifications&task=notifications.createEmailQueue&password=YOUR_PASSWORD"

where YOUR_PASSWORD is the password that you entered previously in the component configuration.

Tip

If your host does not support CRON jobs then you must either move to another host or use a 3rd party service like webcron.org.

Emails are sent to the subscribers automatically via Scheduled tasks.

Send emails command line (wget)

wget -O --max-redirect=10000 /dev/null "http://www.yourdomain.com/index.php?option=com_contentnotifications&task=notifications.sendEmails&password=YOUR_PASSWORD"

where YOUR_PASSWORD is the password that you entered previously in the component configuration.

Important

Before setting up the "Send emails" scheduled task, you must first go to Minitek Content Notifications dashboard in the administrator area and click on the "Configuration" button at the top right of the page. Under the tab "Scheduled Tasks" you will find the option "Emails per batch".

Most hosting providers limit the number of allowed outgoing emails sent per hour. You must contact your hosting provider to learn more about the limits applied to your hosting account.

Be careful

Bypassing the allowed limit of outgoing emails could result in the suspension of your hosting account. The number in the field "Emails per batch" represents the number of emails that will be sent every time the scheduled task is executed; it does not represent the number of emails sent per hour. So, if you enter the number "100" and set up the scheduled task to run every 10 minutes, you will end up sending 100*(60/10) = 600 emails per hour.

This website uses cookies to ensure that you get the best user experience. Cookies Policy / Privacy Policy

Search