New in REC+: User registration / activation flow & new developer capabilities

In this release we look into improvements on how you administer new user activations, as well as a focus on the new developer functionality available to help with more custom sites through modules & content blocks. Let's dive in:


  • Turn form enquiries into registered users
    If you use forms to receive applications to register on your site but do not wish to add them as users immediately (e.g. to screen them), you can now set up the form to include an Activate Account button in the form replies emailed to the admin. By clicking this, the person who completed the form will be added as a user and their name, email address and telephone mumber will be copied into their user record. Read more here
    Add/edit form > tick 'Is this a user approval/activation form?'     
  • Add user with tags
    Quickly tag a user when adding them manually to speed up data entry, or when clicking on Activate Account as described above.
  • Password system changes
    Password minimum length is now set to 8 characters and we've modernised the input field types to make sure we better utilise keyboard layouts available for email & telephone number entry. The new password length requirement is to further encourage security best practice on sites. We'll soon be introducing a new password strength meter you can enable on your site, stay tuned for the release of this soon.  

  • Unsubscribe & subscribe email alerts
    You can now recieve email alerts when any users subscribe or unsubscribe on your site, including being able to narrow this down to specific groups of users.
    Admin > Email Notifications > User Subscribed & Unsubscribed notifications (both default to disabled)

  • Export prices by tag group
    Quickly export prices for products with a specific tag group to perform price updates. 
    Admin > Exports > Product Prices > Tag Group

  • Sage50 improvements via our SagePay support
    We now send items to SagePay in a format that means item lines can be added rather than just a summary. This is useful for Making Tax Digital.

  • Rate Limit IP Whitelisting
    Rate limiting is designed to stop bots/spammers from excessively performing actions on your site like searches. However, for larger companies with many administrators it is possible you could trigger rate limits and be forced to wait for a timeout period. To prevent this for admins, you can now whitelist your IP address to stop rate limiting applying to your own admins.
    Site Settings > Security > Rate Limiting  


  • Background image content blocks

    Allowing improved design flexibility with content blocks. E.g. using inline style

    < div class="layout-container">
        < div class="layout-container-inner" style="background-image: {{ rec_block('my background image', type="background-image") }}">
            < h1>Hello World< /h1>
        < /div>
    < /div>
    or, use a `< style>` block: (as we use url() we're also compatible with pseudo elements)

    < style>
    .myElement:before {
      content: {{ rec_block('my awesome el', type="background-image") }};
    < /style>

  • Module Actions
    These allow you to expand the capabilities of modules, e.g. if you want dedicated pages inside modules such as a booking form for a module of events. 

    Add an `actions/` folder inside your modules `html/` folder and then any `{action}.html.twig` files can be accessed via the url of `/{module}/{action}`

    Actions also gain access to `{{ request }}` which contains .get, .post etc.
    e.g. `{{ request.get.event }}` will return "farmers convention" given this url: `/events/book?event=farmers+convention`

  • New template functions: `pluck` & `key_by` for working with arrays.

    * Pluck lets you grab specific parts of sub arrays into a new array.
      e.g. `{{ objects | pluck('name') | json }}` will print an array of just all the objects names.
    * Key by lets you set the keys of sub arrays so you can access them easier, it also lets you filter an array down to a specific sub value like pluck at the same time
      e.g. `{{ objects | key_by('name', 'dates') | json }}` will print an object where the keys are each name and the value will be the dates property

  • Postcode lookup API resource
    Available at /api/v1/postcode-lookup?postcode=XXXXX
    Example use: performing a postcode lookup within a form requiring addresses (and might also take Stripe or Paypal payments).

  • Template access to the users groups to allow changing content shown based on the user group allowed access.
    Available in twig with `{{ user.groups }}`

  • Purchase orders - added new template tags for user billing & delivery details:
    The following new tags are available for this on the purchase order page manager system page:
    {{ }}, {{ }}, {{ user.business_name }}, {{ user.tel_no }}, {{ user.billing_address }}, {{ user.shipping_address }}

Prospect Manager

  • New setting to prevent too many alerts for 'email opens' in a specified timeframe.
    This is useful when you are tracking when someone opens a quotation several times within a short period.
    Admin > Settings > Leads & Alerts > "Don't notify me if a user opens an email multiple times in" [set time in minutes]
  • Set the status used when a customer clicks the accept quote button available  in quote emails & show thanks / next steps content
    For example, 'Quote Accepted' status. You can also set the page that is displayed to the prospect once they have clicked to accept the quote.
    Admin > Settings > Leads & Alerts > "Select status to use for prospects accepted by email"  &  "Page to redirect a client to once they have accepted a quote"
  • New template tag for "email_quote" system page to add the button into the quote email
    Add {{ quote_accept_link }} into the email_quote system page. Add a hyperlink into whatever text you wish to enter to get them to click, e.g. Click here to accept quote. See how to enter this in the editor's link field.


Behind the scenes

  • Spammy user-agents now also have their emails sent to spam by default.
    These mostly include known web crawlers & security testing tools and should not include any real user however all spam messages as always are stored in Admin > Form Builder > Form replies > Spam, with a reason shown as to why we marked it as spam. 
  • AggregateRating microdata on product pages
    We've supported microdata on pages for a while now but we have amended this further to hopefully help your customer reviews on products to show up better in Google. The aim here is to show review stars against your product results in Google, however often this can still require use of a 3rd party such as


  • Recommend:
  • Share: facebook
  • twitter

Subscribe for updates

Main details
  • *
  • *