diff --git a/.all-contributorsrc b/.all-contributorsrc index a16e96ed..d3998b80 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -104,6 +104,15 @@ "contributions": [ "doc" ] + }, + { + "login": "uadf", + "name": "CPweb", + "avatar_url": "https://avatars.githubusercontent.com/u/2785980?v=4", + "profile": "https://eglise.catholique.fr", + "contributions": [ + "review" + ] } ], "contributorsPerLine": 7, diff --git a/README.md b/README.md index 2150e23e..b548a5a5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ [![Documentation Status][RTD badge URL]][RTD URL] -[![All Contributors](https://img.shields.io/badge/all_contributors-11-orange.svg?style=flat-square)](#contributors-) +[![All Contributors](https://img.shields.io/badge/all_contributors-12-orange.svg?style=flat-square)](#contributors-) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/mautic/user-documentation) @@ -111,6 +111,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d John Wick
John Wick

🐛 jagtapreshma
jagtapreshma

📖 Markus Heinilä
Markus Heinilä

📖 + CPweb
CPweb

👀 diff --git a/docs/campaigns/campaign_builder.rst b/docs/campaigns/campaign_builder.rst index 48d07756..b02e4ddc 100644 --- a/docs/campaigns/campaign_builder.rst +++ b/docs/campaigns/campaign_builder.rst @@ -253,3 +253,31 @@ Actions and Decisions in Mautic require a :doc:`cron jobView in your browser Bounce management -################# +***************** Mautic provides a feature which allows monitoring of IMAP accounts to detect bounced Emails and unsubscribe requests. @@ -284,7 +305,7 @@ Elastic Email, SparkPost, Mandrill, Mailjet, SendGrid and Amazon SES support Web .. vale off Monitored inbox configuration -***************************** +============================= .. vale on @@ -309,7 +330,7 @@ If sending mail through GMail, the Return Path of the Email is automatically rew If you select an Unsubscribe folder, Mautic also appends the Email as part of the "List-Unsubscribe" header. It then parses messages it finds in that folder and automatically unsubscribe the Contact. Webhook bounce management -************************* +========================= Since Mautic 5 all the Email transports use the same Webhook - sometimes called callback - URL: ``https://mautic.example.com/mailer/callback``. Please follow the documentation for the specific Email transport you've installed to get more information about the Webhook configuration. @@ -317,7 +338,7 @@ Since Mautic 5 all the Email transports use the same Webhook - sometimes called .. vale off Create a Segment with bounced Emails -************************************ +===================================== .. vale on @@ -370,4 +391,3 @@ This is because Mautic sends test Emails to a Mautic User and not to a Mautic Co Mautic Users can't unsubscribe and therefore the unsubscribe link looks like this: ``https://mautic.example.com/|URL|``. However, the link **does** work correctly when you send the Email to a Contact. Best practice is to create a Segment with a small number of Contacts to receive test Emails - for example, yourself - which ensures that you can fully test features such as unsubscribe behaviour. - diff --git a/docs/channels/focus_items.rst b/docs/channels/focus_items.rst index 54648637..34cdb5fd 100644 --- a/docs/channels/focus_items.rst +++ b/docs/channels/focus_items.rst @@ -31,8 +31,6 @@ For each type of Focus Item, there are settings to configure which control the t :width: 400 :alt: Screenshot showing the engagement settings for Focus Items. -.. vale off - - **Animate** - When set to Yes, this applies a slide-in animation to the Focus Item. When set to No, the item appears without any kind of sliding motion. - **When to engage** - This setting controls the Focus Item shows. There are several options: - **Upon arrival** - As soon as a visitor lands on the page @@ -49,8 +47,7 @@ For each type of Focus Item, there are settings to configure which control the t - **Once per hour** - Show the Focus Item once every hour that the visitor is on your website - **Once per day** - Show the Focus Item once per day that the visitor is on your website - **Stop engaging after a conversion** - This option is only available for the types which track a conversion (Collect Data and Emphasize a Link). If set to Yes, the Focus Item no longer displays if the visitor has either submitted the Form (Collect Data type) or clicked on the link (Emphasize a Link type). - -.. vale on +- **Stop engaging after closing Focus** - This option is available for Focus Items and uses cookies. If set to Yes, the Focus Item no longer displays to the visitor after they have interacted with it, until they clear their cookies. Styles ====== diff --git a/docs/channels/images/emails/ab-translation-preview.png b/docs/channels/images/emails/ab-translation-preview.png new file mode 100644 index 00000000..97f82f60 Binary files /dev/null and b/docs/channels/images/emails/ab-translation-preview.png differ diff --git a/docs/channels/images/emails/email-excluding-segments.png b/docs/channels/images/emails/email-excluding-segments.png new file mode 100644 index 00000000..2835d84c Binary files /dev/null and b/docs/channels/images/emails/email-excluding-segments.png differ diff --git a/docs/components/forms.rst b/docs/components/forms.rst index 8d472376..fc8e75ba 100644 --- a/docs/components/forms.rst +++ b/docs/components/forms.rst @@ -15,9 +15,9 @@ To create a new Form: #. Go to Components > Forms and click New #. Select the type of Form you wish to create * **Campaign Form** - Mautic allows you to trigger a Campaign with the submission of this type of Form. Campaign Forms have less actions directly associated with the Form submit actions - which happen immediately after Form submission - as most actions trigger as part of a Campaign workflow. - * **Standalone Form** - A more commonly used Form, this allows the execution of many submit actions immediately at the point of Form submission. + * **Standalone Form** - A more commonly used Form, this allows the execution of many submit actions immediately at the point of Form submission. -.. warning:: +.. warning:: Forms with a lot of submit actions - particularly when submitting to third party systems such as a Customer Relationship Management system - can have an impact on the Form submission time. This is especially the case if there are a lot of fields. Consider using a Campaign Form if you can wait for the cron job to trigger the actions. The following fields are available: @@ -38,11 +38,11 @@ The following fields are available: - **Kiosk mode** - If Yes, Mautic turns off tracking of Contacts created through the Form, so that the Form doesn't generate cookies or associate any IP address with the Contact record. Marketers may refer to this as 'data entry mode'. It's ideal for using at conferences or events where several Contacts may enter their information using the same device, as it prevents associating the activity on the device to Contacts. -- **Render style** - If Yes, the Form displays with the styling from either the selected Mautic Theme or the Attributes tab of the Form Fields. When No, the Form adopts the styling of where it's embedded. +- **Use Theme style** - If Yes, the Form displays with the styling from either the selected Mautic Theme or the Attributes tab of the Form Fields. When No, the Form adopts the styling of where it's embedded. - **Theme** - Select a Mautic Theme which has styling for a Form. This dictates the styling of the Form when added to an external website or Application if 'Render style' is Yes. -.. note:: +.. note:: Not all Themes include Form styling. Check the Features column on your Themes listing in the Theme Manager to see which Themes include styling for Forms. .. vale off @@ -85,7 +85,7 @@ To add a new field to your Form: - **Checkbox Group** - This field allows a visitor to select one or more options from a list using checkboxes. This field type can also provide a single checkbox - for example to gain consent to use cookies and send marketing Emails or other messages to the Contact. - .. note:: + .. note:: You can associate checkbox group fields with *boolean* and *select - multiple* fields, but not *select* fields. - **Date** - This field allows the visitor to select a date with a calendar picker. The formatting of the date applies the default setting in your Configuration. @@ -98,7 +98,7 @@ To add a new field to your Form: - **File** - This allows visitors to upload a file on the Form. - .. warning:: + .. warning:: When using the file upload field there is a limit of 1,000 submissions using the same filename. Note that you can attach the submitted files in the "Send Form result" action. - **HTML area** - This field allows marketers to add custom HTML to their Form. @@ -186,9 +186,9 @@ CAPTCHA :width: 600 :alt: Screenshot showing CAPTCHA Form properties -With a CAPTCHA field, the answer field should be blank if you are using this as a honeypot to trap spam submissions. This hides the field, and spambots try to populate the field with data. +With a CAPTCHA field, the answer field should be blank if you are using this as a honeypot to trap spam submissions. This hides the field, and spambots try to populate the field with data. -Mautic recognizes if there's data in a honeypot CAPTCHA field and understands that it can't be a human submitting the Form. +Mautic recognizes if there's data in a honeypot CAPTCHA field and understands that it can't be a human submitting the Form. To have a human answer a basic question or statement - for example ``What's 2+2`` or ``Enter 'CAPTCHA' here`` - you would enter the expected input in the answer field, in this case, ``4`` or ``CAPTCHA``. The field's label should be the question, or you can use the label CAPTCHA and then have the question as the input placeholder. @@ -233,16 +233,16 @@ When uploading a file within a Form there are several options under the properti Attributes ~~~~~~~~~~ - Attributes are CSS tags which change the styling of a particular Form. + Attributes are CSS tags which change the styling of a particular Form. -.. note:: +.. note:: Setting the Render Style to No on the Form means that Mautic ignores the styling in these fields. .. image:: images/forms/checkbox_group_attributes.png :width: 600 :alt: Screenshot showing the attributes for a checkbox group -- **Field HTML name**: this is the machine name of the field, populated automatically from the label. You can customise this field if the label is long. You reference this field is when connecting Mautic Forms to other Forms, or when using the Manual Copy function to manually add the Form to your website or app. +- **Field HTML name**: this is the machine name of the field, populated automatically from the label. You can customise this field if the label is long. You reference this field is when connecting Mautic Forms to other Forms, or when using the Self-hosted function to manually add the Form to your website or app. - **Label attributes**: this field changes the way the label text appears. You should use the format ``style="attribute: descriptor"`` to change the style. For example, to change the label to red, use ``style="color: red"`` or ``style="color: #ff0000"``. - **Input attributes**: changes the way any text inside the Form Field appears. This applies to the input placeholder text, text entered by the visitor submitting the Form, and the options for the select fields when Allow Multiple is Yes - including List - Country. - **Field container attributes**: this changes the Form Field. Use this to change the size of the box, fill color, rounded edges, or any other properties of the actual field. @@ -268,12 +268,58 @@ To change the order of fields on your Form: #. Click the field you would like to move #. Drag the field to a new location +.. vale off + +Progressive profiling +********************* +.. vale on + +Progressive profiling is a powerful feature used to reduce the length of Forms by hiding all the fields that are already known. This prevents your Contacts from feeling overwhelmed by massive Forms and even reduces the time it takes to fill out a Form if fields are already known to your Mautic instance and thus hidden for the Contact. + +Configuration of progressive profiling +====================================== + +There are two ways to configure a Form Field to only display when the asked values are unknown. + +First, choose the Form that you want to use for progressive profiling. Go to the Form Fields and open the field configuration of the field you want to use for progressive profiling. Change to the Behavior tab. Here, you can configure the behavior of the fields. + +.. note:: + It's always recommended to use the Email field, even if it's already known, because Mautic uses the Email as a unique identifier for Contacts. Additionally, ensure the submit button field is always visible. Otherwise, the Contact can't submit the Form. + +1. **Show when value exists**: +if set to 'No,' Mautic checks whether the value for this field exists in the database or if a previous Form submission provided it. If found, Mautic won't display the field in the Form. If set to 'Yes,' Mautic displays the field regardless of the existence of a value in the field. The default configuration for this option is 'Yes'. + +2. **Display field only after X submissions**: +if you have a Form that you'd like to use multiple times, with more fields appearing the more times a Contact fills it out, while still using only a single Form, the option 'Display field only after X submissions' is what you're looking for. As the name suggests, the field appears only after the Form has received X submissions. This feature pairs well with the ability to hide fields if the value is already known. + +For example, on the first time of completing the Form, it asks for the Email, first, and last name of a Contact. When the Contact fills out the Form a second time, it hides the first and last name fields, and instead, it prompts the Contact to fill in their Company and phone. + +.. vale off + +Limits of Progressive Profiling +=============================== +.. vale on + +**The search history limit** + +Mautic Forms which don't use progressive profiling are as fast as they can be. The HTML of the Form renders once, gets stored, and Mautic uses this "cached" HTML for the next Form load. When turning on progressive profiling for any of the Form Fields, the Form HTML might be different for each Contact. It can even change for each Contact after each submission. The impact of this is that you can't use Form-caching, and the Form load time is slower for a progressive profiling Form. + +Mautic imposed a limit of 200 submissions from which it searches for existing Form values. This limit aims to prevent possible long Form loading times or hitting the server time or memory limits when a Contact has several thousand Form submissions. Exceeding this limit might cause Mautic to display/hide the wrong fields for a Contact. + +**The embed type limit** + +Progressive Profiling Forms don't function if you embed your Form as static HTML. However, they work on Form preview, Form public pages, Forms embedded via JS, and Forms embedded via iframes. + +**The kiosk mode limit** + +When you switch the Form to Kiosk Mode, the Progressive Profiling features are turn off. In Kiosk Mode, the Form always creates a new Contact upon each submission and doesn't track the device submitting the Form. + Form actions ************ You may want to trigger certain actions to happen immediately after Form submission - this is what Form actions are for. This might include communications with the Contact, tracking, internal notifications, or other Contact management tasks. -.. note:: +.. note:: The Form actions available in Mautic are also available in Standalone Forms, which include more options as they're not associated with Campaigns. Campaigns tend to trigger most actions through Campaign actions so Forms associated with Campaigns only have a basic set of Form actions. - **Add to Company's Score**: if a Contact associated with a Company record in Mautic has submitted the Form, you can add or subtract Points to the Company's overall score. Company scoring in Mautic doesn't aggregate Points for all its associated Contacts. Any actions that you want to contribute to a Company's score must be explicitly set. Negative numbers are valid if you want to subtract from a Company's score based on a Contact submitting a Form. If the Contact isn't tracked and the Form doesn't include a field mapped to Company or Company Name - on the Company object - the Company has no Points awarded. @@ -288,7 +334,7 @@ You may want to trigger certain actions to happen immediately after Form submiss :width: 600 :alt: Screenshot showing the adjust Contact score Form action. -- **Modify Contact's Segments**: this action allows you to change a Contact's Segment membership when they submit a Form. Type in the name of the Segment to add the Contact to or remove the Contact from. You can use both fields at the same time, and can include multiple Segments in either or both fields. +- **Modify Contact's Segments**: this action allows you to change a Contact's Segment membership when they submit a Form. Type in the name of the Segment to add the Contact to or remove the Contact from. You can use both fields at the same time, and can include multiple Segments in either or both fields. Dynamic Segments based on filters update based on information in the Contact record automatically - you don't need add them to the Segment in a Form action. @@ -360,7 +406,7 @@ You can style the message itself as you like, and you can click to insert the su .. image:: images/forms/send_form_results.png :width: 600 - :alt: Screenshot showing the send Form results action. + :alt: Screenshot showing the send Form results action. .. vale off @@ -383,22 +429,22 @@ When working with Mautic Landing Pages or common Content Management Systems (CMS - **Mautic Landing Page**: ``{form= ID#}`` - **Drupal 7.x**: ``{mauticform id =ID# width=300 px height=300 px}`` - be sure to change the width and height to the appropriate size for your website. -.. warning:: - This shortcode doesn't work for Drupal 8.x - it's recommended to use the Automatic Copy option instead. +.. warning:: + This shortcode doesn't work for Drupal 8.x - it's recommended to use the Embedded option instead. - **Joomla!**: ``{mauticform ID#}`` - **WordPress**: ``[mautic type="form" id=ID#]`` -Automatic copy +Embedded ============== .. image:: images/forms/embed_form.png :width: 600 - :alt: Screenshot showing the options for embedding a Mautic Form. + :alt: Screenshot showing the options for embedding a Mautic Form. -The Automatic option for embedding Mautic Forms uses JavaScript and ensures that the Forms on your website are always up to date with what you have set in Mautic. If you make changes to the Form in Mautic, you don't have to worry about re-copying the Form code everywhere you use the Form. Features including auto-fill and progressive profiling **only** works with the Automatic option. +The Embedded option for embedding Mautic Forms uses JavaScript and ensures that the Forms on your website are always up to date with what you have set in Mautic. If you make changes to the Form in Mautic, you don't have to worry about re-copying the Form code everywhere you use the Form. Features including auto-fill and progressive profiling **only** works with the Embedded option. -.. note:: +.. note:: Before copying the code to embed your Mautic Forms, ensure that you are on the correct domain name - not a staging area or internal reference for example - as the Form embed code references the URL. Via JavaScript @@ -415,16 +461,16 @@ Via IFrame IFrames can be more difficult to use, and blocking by browsers is more likely, however there are sometimes where using an IFrame is preferable. Be sure to adjust the width and height for the space required to fit the Form. The visitor may need to scroll within the IFrame depending on the resolution of their browser. It's possible to display an error message in the event that the visitor's browser doesn't support IFrames, by editing the text between the ``

`` and ``

`` tags before copying the code and pasting it into your website. -Manual copy +Self-hosted =========== .. image:: images/forms/embed_form_manual.png :width: 600 - :alt: Screenshot showing the options for manually embedding a Mautic Form. + :alt: Screenshot showing the options for manually embedding a Mautic Form. -The manual copy option does provide more flexibility to extend Forms with JavaScript snippets and custom styling, however it's a manual process and any changes made within Mautic after copying the code won't be automatically reflected on your website unless you re-copy and paste the new HTML code. +The Self-hosted option does provide more flexibility to extend Forms with JavaScript snippets and custom styling, however it's a manual process and any changes made within Mautic after copying the code won't be automatically reflected on your website unless you re-copy and paste the new HTML code. -.. note:: +.. note:: Before copying the code to embed your Mautic Forms, ensure that you are on the correct domain name - not a staging area or internal reference for example - as the Form embed code references the URL. #. Copy the JavaScript code in the first box, and paste it into the head or body of your page. If you have multiple Mautic Forms on the same page, add this once only. @@ -459,7 +505,7 @@ Adding conditional fields to a Mautic Form Once you have created the required Custom Fields, add the parent field to the Form as detailed previously, and add the relevant information in the tabs. -.. note:: +.. note:: When using conditional fields, only ``Select``, ``Select - Multiple`` and ``Boolean`` field types are valid as the parent field. .. image:: images/forms/conditional_fields_1.png @@ -478,13 +524,13 @@ Once saved, an option displays to add a conditional field. :width: 600 :alt: Screenshot showing option to add a field based on the value of an existing field -In this example, select the ``Checkbox Group`` option, and under the Condition tab, choose ``including`` and ``Ford``. +In this example, select the ``Checkbox Group`` option, and under the Condition tab, choose ``including`` and ``Ford``. .. image:: images/forms/conditional_fields_4.png :width: 600 :alt: Screenshot showing selection of parent field -This means that when the visitor selects Ford, the Form displays this field. +This means that when the visitor selects Ford, the Form displays this field. There are two options: @@ -504,7 +550,7 @@ Once saved, the Form displays the conditional field nested underneath the parent Blocking Form submissions from specified domains ************************************************ -Sometimes it's necessary to block certain domains from submitting Forms - for example to restrict access to proprietary content and reduce the volume of unqualified leads. +Sometimes it's necessary to block certain domains from submitting Forms - for example to restrict access to proprietary content and reduce the volume of unqualified Contacts. Configuring blocked domains =========================== @@ -527,4 +573,4 @@ To apply domain name filtering on a Mautic Form, add an Email field to the Form :width: 600 :alt: Screenshot showing domain blocking used in a Mautic Form -It's advised to provide a helpful message to display if the visitor tries to use an Email address from a blocked domain, to help them understand what the problem is. \ No newline at end of file +It's advised to provide a helpful message to display if the visitor tries to use an Email address from a blocked domain, to help them understand what the problem is. diff --git a/docs/components/images/forms/embed_form.png b/docs/components/images/forms/embed_form.png index cb0449aa..d4eaf931 100644 Binary files a/docs/components/images/forms/embed_form.png and b/docs/components/images/forms/embed_form.png differ diff --git a/docs/components/images/forms/embed_form_manual.png b/docs/components/images/forms/embed_form_manual.png index 77ec10a3..7fe50135 100644 Binary files a/docs/components/images/forms/embed_form_manual.png and b/docs/components/images/forms/embed_form_manual.png differ diff --git a/docs/conf.py b/docs/conf.py index 0e6c1ca5..cf45deb5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -74,4 +74,6 @@ r"https://support.twilio.com/*", # This is a demo URL and should not be checked r"https://api-ssl.bitly.com/*", + #This domain blocks the checker. + r"https://linuxize.com/*", ] diff --git a/docs/configuration/command_line_interface.rst b/docs/configuration/command_line_interface.rst index 889c9979..2a5084c8 100644 --- a/docs/configuration/command_line_interface.rst +++ b/docs/configuration/command_line_interface.rst @@ -104,6 +104,9 @@ These are the commands you may need to use in relation to your Mautic instance. * - ``mautic:contacts:deduplicate`` - Merge Contacts based on same unique identifiers - + * - ``mautic:contacts:scheduled_export`` + - Processes exports of Contacts to a CSV file and sends the results via Email. + - * - ``mautic:custom-field:create-column`` - Creates the actual column in the table - @@ -113,6 +116,9 @@ These are the commands you may need to use in relation to your Mautic instance. * - ``messenger:consume email`` - Processes mail queue - + * - ``mautic:fields:analse`` + - Analyze Custom Fields table and return table or file with results. See :doc:`/contacts/custom_fields`. + - * - ``mautic:import`` - If the CSV import is configured to run in background then this command will pick up the pending import jobs and imports the data from CSV files to Mautic. - diff --git a/docs/configuration/cron_jobs.rst b/docs/configuration/cron_jobs.rst index 433d6f21..97008e69 100644 --- a/docs/configuration/cron_jobs.rst +++ b/docs/configuration/cron_jobs.rst @@ -157,6 +157,21 @@ To import an especially large number of Contacts or Companies in the background, The time taken for this command to execute depends on the number of Contacts in the CSV file. However, on successful completion of the import operation, a notification appears on the Mautic dashboard. +.. vale off + +Export Contacts cron job +======================== + +.. vale on + +To export Contacts to CSV - sending the results via Email - use the following command: + +.. code-block:: bash + + php /path/to/mautic/bin/console mautic:contacts:scheduled_export + +The time taken for this command to execute depends on the number of Contacts in the CSV file. However, on successful completion of the export operation, Mautic sends an email with the link to download the CSV. + Webhooks cron job ================= @@ -166,6 +181,15 @@ If the Mautic configuration settings include Webhook batch processing, use the f php /path/to/mautic/bin/console mautic:webhooks:process + +Since Mautic 5.1 it's also possible to run the Webhooks cron job in 'range mode'. This allows you to specify a range of Webhook events to process in a single run. This can be useful if you have a large number of Webhook events to process and want to avoid running out of memory. + +To use this mode, you can specify the ``--min-id`` and ``--max-id`` options. For example, to process events for a Webhook with ID of 5, you can specify to only process the events for that Webhook with IDs between 1000 and 2000 using the following command: + +.. code-block:: bash + + bin/console mautic:webhooks:process --webhook-id=5 --min-id=1000 --max-id=2000 + .. _cron jobs: .. vale off @@ -315,6 +339,19 @@ These commands work with all available Plugins. To avoid performance issues when you can replace ``mautic:plugins:reload`` with ``mautic:plugins:install`` or ``mautic:plugins:update``. They're the same commands with different alias. +Exclude processed entities +************************** + +This feature is particularly useful for managing data and ensuring that entities aren't processed multiple times unnecessarily. The ``--exclude`` option prevents the specified action from re-processing entities that it has already processed.. This option is available for the ``mautic:campaigns:trigger``, ``mautic:campaigns:rebuild``, and ``mautic:segments:update`` commands. + +.. code-block:: php + + php /path/to/mautic/bin/console mautic:campaigns:trigger --exclude + +.. note :: + + This is particularly useful for scenarios where you want to avoid redundant processing of entities, such as preventing a Campaign or Segment action from executing multiple times for the same Contact. + Tips & troubleshooting ********************** diff --git a/docs/configuration/images/default-frequency-rule.png b/docs/configuration/images/default-frequency-rule.png new file mode 100644 index 00000000..351bc655 Binary files /dev/null and b/docs/configuration/images/default-frequency-rule.png differ diff --git a/docs/configuration/images/export-settings.png b/docs/configuration/images/export-settings.png new file mode 100644 index 00000000..e342b2fb Binary files /dev/null and b/docs/configuration/images/export-settings.png differ diff --git a/docs/configuration/images/mail-send-settings.png b/docs/configuration/images/mail-send-settings.png index 2ab36cf3..daf99af6 100644 Binary files a/docs/configuration/images/mail-send-settings.png and b/docs/configuration/images/mail-send-settings.png differ diff --git a/docs/configuration/images/monitored-inbox-settings.png b/docs/configuration/images/monitored-inbox-settings.png new file mode 100644 index 00000000..ce735533 Binary files /dev/null and b/docs/configuration/images/monitored-inbox-settings.png differ diff --git a/docs/configuration/images/monitored-settings.png b/docs/configuration/images/monitored-settings.png deleted file mode 100644 index 1c8d3f32..00000000 Binary files a/docs/configuration/images/monitored-settings.png and /dev/null differ diff --git a/docs/configuration/settings.rst b/docs/configuration/settings.rst index 8c40ac72..3b040985 100644 --- a/docs/configuration/settings.rst +++ b/docs/configuration/settings.rst @@ -319,7 +319,11 @@ See :ref:`here` to set the Contact's Em Default frequency rule ====================== -* **Do not contact more than each ** - This limits the number of Marketing Messages a Contact receives in a certain period of time day, week, month. Transactional messages don't count towards this limit. You can adjust this at the individual Contact level, either manually or by Preference Center setting. +* **Do Not Contact more than each ** - This limits the number of Marketing Messages a Contact receives in a certain period of time day, week, month. Transactional messages don't count towards this limit. You can adjust this at the individual Contact level, either manually or by Preference Center setting. + +.. image:: images/default-frequency-rule.png + :width: 600 + :alt: Screenshot showing Default Frequency Rule Configuration in Mautic .. note:: @@ -328,7 +332,7 @@ Default frequency rule Monitored inbox settings ======================== -.. image:: images/monitored-settings.png +.. image:: images/monitored-inbox-settings.png :width: 600 :alt: Screenshot showing Monitored Settings Configuration in Mautic @@ -448,7 +452,16 @@ Import settings :alt: Screenshot showing Import Settings Configuration in Mautic * **Automatically import in the background if the CSV has more rows than defined** - If there are more than the specified number of rows in an import file, the CSV automatically sets to import in the background which requires a :ref:`cron job` to trigger. Set to 0 if you want to always import files in the background recommended for performance optimization. - + +Export settings +=============== + +.. image:: images/export-settings.png + :width: 600 + :alt: Screenshot showing Export Settings Configuration in Mautic + +* **Automatically export Contacts to CSV in the background** - If set to Yes, Mautic processes CSV exports of Contacts in the background and Mautic sends an Email with a link to download the file when it's processed. + Segment settings **************** diff --git a/docs/contacts/custom_fields.rst b/docs/contacts/custom_fields.rst index 06d4bf98..dd7c55a8 100644 --- a/docs/contacts/custom_fields.rst +++ b/docs/contacts/custom_fields.rst @@ -105,3 +105,51 @@ If you configure this option, the new Custom Field becomes visible in the list o This configuration helps prevent **http** request timeouts because it handles the long-running SQL query to create the new table column as a background task. To mitigate the table lock issue, run the command only once daily when you know that most of your audience is offline. With less traffic going into Mautic, the chances of encountering a problem are lower. + + +Analyzing Custom Fields to optimize tables +****************************************** + +Since Mautic 5.1 there is a command which allows you to analyze the Custom Fields and optimize the tables. This command is useful when you have a lot of Custom Fields and you want to optimize the size of VARCHAR fields. + +Using this command allows you to optimize the VARCHAR columns so that you can create more Custom Fields if you hit the hard limit on the Leads table and can't create more. + +Use the command: + +.. code-block:: bash + + bin/console mautic:fields:analyse -t + +Use the -t argument to see the output in tabulated form in the console. + +Use the following to export the data to a file: + +.. code-block:: bash + + bin/console mautic:fields:analyse > path/to/file.csv + +Locally defined countries and regions +************************************* + +Since Mautic 5.1 it's possible to define custom countries and regions via locally hosted JSON files. This is useful when you have a specific set of countries or regions that you want to use in your Mautic instance. You can define these in a file called ``countries.json`` or ``regions.json`` located in your defined ``upload_dir`` which is ``media/files`` by default. Example code snippets are below: + +.. code-block:: json + + [ + "Middle Earth", + "Fillory" + ] + +.. code-block:: json + + { + "Middle Earth": [ + "The Shire", + "Mordor" + ], + "Fillory": [ + "Castle Whitespire", + "Ember's Tomb" + ] + } + diff --git a/docs/marketplace/images/composer-enabled.png b/docs/marketplace/images/composer-enabled.png index b5d5b63d..883e4fd6 100644 Binary files a/docs/marketplace/images/composer-enabled.png and b/docs/marketplace/images/composer-enabled.png differ diff --git a/docs/marketplace/images/marketplace-detail.png b/docs/marketplace/images/marketplace-detail.png index d5d8a7b2..c51805c3 100644 Binary files a/docs/marketplace/images/marketplace-detail.png and b/docs/marketplace/images/marketplace-detail.png differ diff --git a/docs/marketplace/images/need-to-enable-composer.png b/docs/marketplace/images/need-to-enable-composer.png index 9f3d61ae..d85d2972 100644 Binary files a/docs/marketplace/images/need-to-enable-composer.png and b/docs/marketplace/images/need-to-enable-composer.png differ diff --git a/docs/plugins/zoho_crm.rst b/docs/plugins/zoho_crm.rst index 540f417f..9b638f8d 100644 --- a/docs/plugins/zoho_crm.rst +++ b/docs/plugins/zoho_crm.rst @@ -5,7 +5,7 @@ Zoho CRM .. vale on -Mautic can push a Contact to :xref:`Zoho CRM` based on :doc:`Actions ` or :doc:`points trigger`. +Mautic can push a Contact to :xref:`Zoho CRM` based on Campaign :ref:`Actions` or :ref:`Point triggers`. Language configuration warning ****************************** diff --git a/docs/points/images/points-action.png b/docs/points/images/points-action.png index 8c4c6409..7caaa8e8 100644 Binary files a/docs/points/images/points-action.png and b/docs/points/images/points-action.png differ diff --git a/docs/points/points.rst b/docs/points/points.rst index aa711ceb..0012a103 100644 --- a/docs/points/points.rst +++ b/docs/points/points.rst @@ -1,16 +1,17 @@ -.. vale off Points ###### -.. vale on - Points provide a way for properly weighing Contacts. These Points have both triggers and actions. The following section outlines all the relevant term definitions, and a thorough understanding of how Points function. This helps make your overall marketing automation process successful using Points -Point actions +.. vale off + +Point Actions ************* -Point actions are those times when a Contact receives a change in their Point total. These actions can be either positive or negative Point changes and occur based on a particular action as you determine. +.. vale on + +Point Actions are those times when a Contact receives a change in their Point total. These actions can be either positive or negative Point changes and occur based on a particular action as you determine. To add a new action: @@ -27,11 +28,11 @@ To add a new action: * **Change Points (+/-)** - The value change to set for the action. The ``+`` isn't necessary when adding Points. When subtracting Points, add the ``-`` symbol. - * **When a Contact…** - This is the behavior or action the Contact must complete to trigger the action. + * **Actions taken by User** - This is the behavior or action the Contact must complete to trigger the action. 3. On the right side is more information: - * **Category** - Organize your Point actions based on their goals, Campaigns, etc. For more information, see :doc:`Categories`. All Points accumulate on a Contact record, regardless of Category. There is one Points score for each Contact. + * **Category** - Organize your Point Actions based on their goals, Campaigns, etc. For more information, see :doc:`Categories`. All Points accumulate on a Contact record, regardless of Category. There is one Points score for each Contact. * **Published and Publish/Unpublish at date/time** - Once you have a Point action, Mautic awards Points when a Contact completes the action. Points aren't given for unpublished actions. If you have target behaviors that you want to award Points for within a certain time period, you can set the publish and unpublish dates @@ -39,9 +40,13 @@ To add a new action: 4. Click **Save** or **Save & Close**. -Point triggers +.. vale off + +Point Triggers ************** +.. vale on + Once a Contact has accumulated a Point total, you may want to trigger an action with the Contact. You may create multiple triggers for different Point values. .. image:: images/points-trigger.png @@ -49,7 +54,7 @@ Once a Contact has accumulated a Point total, you may want to trigger an action Creating Point Triggers is like creating Point Actions. The **Name**, **Description**, **Category**, and **Publish** options are all the same. The trigger fires based on the minimum number of Points. Set a number and decide if you want to **Trigger for existing applicable Contacts upon saving - if published**. -Once you have decided and entered those options, go to the **Events** tab. Here, you can trigger one or more events once a Contact has reached your predetermined Point total. These Point triggers and associated events are also fully customizable. +Once you have decided and entered those options, go to the **Events** tab. Here, you can trigger one or more events once a Contact has reached your predetermined Point total. These Point Triggers and associated events are also fully customizable. .. image:: images/trigger-events.png :alt: Screenshot of Points trigger events diff --git a/docs/reports/images/mautic-report-details.png b/docs/reports/images/mautic-report-details.png index 201c6469..8d11dc29 100644 Binary files a/docs/reports/images/mautic-report-details.png and b/docs/reports/images/mautic-report-details.png differ diff --git a/docs/reports/images/scheduled-report.png b/docs/reports/images/scheduled-report.png new file mode 100644 index 00000000..382ad830 Binary files /dev/null and b/docs/reports/images/scheduled-report.png differ diff --git a/docs/reports/reports.rst b/docs/reports/reports.rst index a3f9057f..fc065d69 100644 --- a/docs/reports/reports.rst +++ b/docs/reports/reports.rst @@ -88,13 +88,13 @@ The parent data source provides a high-level summary of the data while the child * **Published** - Select **Yes** to ensure that the Report is active, ready to send when scheduled in the Report options. -* **System Report** - Select **Yes** so that all Users can access the Report. If set to No, only the owner of the Report and Users with permission to view others' Reports can see the Report. +* **Visible for all logged-in Users** - Select **Yes** so that all Users can access the Report. If set to No, only the owner of the Report and Users with permission to view others' Reports can see the Report. -* **Owner** - Select the owner of the Report to determine who can see the Report if the System Report setting is No. +* **Owner** - Select the owner of the Report to determine who can see the Report if the 'Visible for all logged-in Users' setting is No. * **Dynamic filters settings** - - Show opened by default - If you want to ensure that the date filters and filter options for any other Report filters are visible on a Report detail page without needing to open the filters drop-down, select Yes. For example, for an Emails Report, you might want to view dynamic filters for subject or sent date. + - Opened by default - If you want to ensure that the date filters and filter options for any other Report filters are visible on a Report detail page without needing to open the filters drop-down, select Yes. For example, for an Emails Report, you might want to view dynamic filters for subject or sent date. - Hide date range - To hide the date range filter so that Users can't change the dates that the Report displays data for, select to **Yes**. @@ -162,6 +162,12 @@ Alternatively, you can select Weekdays to send the Report on the first or last w Once you've set all of the options you'd like in the **Details**, **Data**, **Graphs**, and **Schedule** tabs, click **Save & Close** to save the Report. Clicking **Apply** saves the progress you've made on building the Report and keeps you in the edit mode. +You can identify scheduled Reports in the list of Reports from Mautic 5.1 and later by the paper aeroplane icon next to the Report name. + +.. image:: images/scheduled-report.png + :align: center + :alt: Screenshot of Mautic Scheduled Report showing a paper aeroplane icon + .. vale off Cron job to schedule Reports diff --git a/docs/segments/images/create-segment.png b/docs/segments/images/create-segment.png index 8300b541..fce81391 100644 Binary files a/docs/segments/images/create-segment.png and b/docs/segments/images/create-segment.png differ diff --git a/docs/segments/images/filtering.png b/docs/segments/images/filtering.png index abe17c1f..266b9b14 100644 Binary files a/docs/segments/images/filtering.png and b/docs/segments/images/filtering.png differ diff --git a/docs/segments/manage_segments.rst b/docs/segments/manage_segments.rst index 3dfbece8..ba7ff9fb 100644 --- a/docs/segments/manage_segments.rst +++ b/docs/segments/manage_segments.rst @@ -33,7 +33,7 @@ Creating a Segment :width: 700 :alt: Screenshot showing creating a Segment. -* **Public Segment** - This option determines if the Segment is available for all Users to see and use, or only the User who created the Segment. +* **Visible to other Users** - This option determines if the Segment is available for all Users to see and use, or only the User who created the Segment. * **Available in Preference Center** - If set to **Yes**, Contacts can see and opt into or out of the Segment on a **Preference Center** page. The Segments display if the Preference Center has the **Segment List** slot type. @@ -436,6 +436,8 @@ Beside this you can specify your date with text. These formulas are **translatab * ``this week`` / ``last week`` / ``next week`` * ``this month`` / ``last month`` / ``next month`` * ``this year`` / ``last year`` / ``next year`` +* ``first day of previous month`` / ``first day of January 2022`` +* ``last day of previous month`` / ``last day of January 2022`` Example (Consider that today is ``2022-03-05``): @@ -444,6 +446,8 @@ Example (Consider that today is ``2022-03-05``): * ``Date identified equals last month`` returns all Contacts identified in the specified date range, for example 2022-02-01 - 2022-02-28. * ``Date identified greater or equal last year`` returns all Contacts identified 2021-01-01 and after. * ``Date identified greater than last year`` returns all Contacts identified after 2021-12-31. +* ``Date identified greater than first day of previous month`` returns all Contacts identified after 2022-02-01. +* ``Date identified greater than last day of previous month`` returns all Contacts identified after 2022-02-28. * ``Custom Contact date field equal birthday -1 day`` returns all Contacts identified every year on 03-04 (4th march). * ``Custom Contact date field equal anniversary -1 month`` returns all Contacts identified every year on 02-04 (4th february) diff --git a/docs/troubleshooting/file_ownership_permissions.rst b/docs/troubleshooting/file_ownership_permissions.rst index 45063e8f..f4693b9f 100644 --- a/docs/troubleshooting/file_ownership_permissions.rst +++ b/docs/troubleshooting/file_ownership_permissions.rst @@ -110,6 +110,6 @@ To reset the ownership of files and folders, use the following command - ensurin .. vale off -This command **ch-**anges **own-**ership, using the ``-R`` flag which means recursively - including all files/folders within that location. Read more about the :xref:`Linux chown command`. +This command **ch-** anges **own-** ership, using the ``-R`` flag which means recursively - including all files/folders within that location. Read more about the :xref:`Linux chown command`. .. vale on diff --git a/docs/users_roles/images/mautic-users.png b/docs/users_roles/images/mautic-users.png index f683039e..f4627972 100644 Binary files a/docs/users_roles/images/mautic-users.png and b/docs/users_roles/images/mautic-users.png differ