Release Notes – WP Ultimo 1.4.0: A step towards building the Ultimate Subscription-based Network Solution

Hi, everyone!

Version 1.4.0 is here and it represents a major step towards making WP Ultimo the all-in-one solution for building premium networks.

This version is all about the Sign-up Process.

It implements template overridesa new API for adding steps and fields on the sign-up flowa complete redesign of how the sign-up flow processes account creation, with two very handy functions, custom signup URL, and much more!

 

Sign-up Flow

Templates overrides

We realize the importance of making WP Ultimo as customizable as we can. Each and every one of our customers wants to provide a customized experience to their users. That being said, having dozens of premium services with the exact same sign-up page design (the WP Ultimo sign-up page) does little to offer that WOW feeling we all want to give potential clients.

In order to address this “lack of customization” problem, we implemented template overrides in WP Ultimo.

How does that work? It is simple. WP Ultimo now uses WordPress template hierarchy to selectively load view templates for its pages. It will first check your theme’s directory for template files and only if it does not find anything it will load the default templates shipped with it.

Don’t like that way the pricing tables look? Just copy the pricing-table.php from wp-ultimo/views/signup/pricing-table/pricing-table.php to your_active_theme_folder/wp-ultimo/signup/pricing-table, make some changes and voilá: WP Ultimo will load that file instead of the original one.

WP Ultimo supports template overriding for all the templates inside wp-ultimo/views/signup and wp-ultimo/views/emails, so you can have total control over the sign-up process and how your emails look. Overriding of widgets inside the dashboard should be added soon!

Customized Sign-up page URL

You can also change the URL of the sign-up page to anything you want, from now on, replacing the old wp-signup.php.

Screen shot 2017 08 08 at 02. 18. 16 1
New Option: Sign-up Custom URL
Screen shot 2017 08 08 at 02. 22. 39
New URL In Action

Hide plan selection step for single-plan sites

Many premium networks offer a single pricing option. For those networks, it does not really make sense to have a plan selection step during checkout. Networks admins now have an option to skip the plan selection step altogether if they only have one plan in the platform.

Screen shot 2017 08 08 at 02. 18. 16
New Option: Skip Plan Selection

 

Steps/Fields API and Customizer Form Builder

In order to provide even more flexibility, we completely redesigned the way WP Ultimo generates and displays its steps during sign-up. The API for custom fields was simplified and we now have two functions to handle sign-up extensibility: wu_add_signup_step() and wu_add_signup_field(). No more hooking into 3 different hooks as it used to be.

As a quick example, adding a new signup step to gather the client’s first and last name is as simple as the code snippet shown below:

/**
 * We need to hook as soon as we can, to make sure we 
 * modify the steps before they get used
 */
add_action('init', function() {

    /**
     * First, we add a new step. The ID of this step is customer-info
     * We also pass a order value of 33, that means that our custom step will sit between
     * the third (order 30) and forth (order 40) steps.
     */
	wu_add_signup_step('customer-info', 33, array(
		'name' => 'User Information',
	));

    /**
     * Now we add the fields
     * The first argument tells the API the step we want to add fields to, in our case, customer-info
     * The type argument tells which type of field we should render, we currently support
     * text, number, password, email, url, html, submit
     */
	wu_add_signup_field('customer-info', 'first_name', 10, array(
		'name'    => 'First Name',
		'tooltip' => "Tooltip text to give the user tips about the field (optional)",
		'type'    => 'text',
	));

	wu_add_signup_field('customer-info', 'last_name', 20, array(
		'name'    => 'Last Name',
		'tooltip' => "Tooltip text to give the user tips about the field (optional)",
		'type'    => 'text',
	));

    /**
     * Lastly, we add a submit button for that step
     */
	wu_add_signup_field('customer-info', 'submit', 100, array(
		'name'    => 'Go to next step',
		'type'    => 'submit',
	));

});

Saving and Retrieving Data

All the extra fields added to the sign-up flow get saved as default WordPress user meta data. That means that you don’t have to do anything else in order to save the contents of the extra fields you’ve added to the signup. It just works. This data can then be retrieved using standard WordPress functions like get_user_meta.

We also added a handy shortcode to display that information on the front-end: [wu_user_meta]. It takes a user_id argument (which you can leave blank as it defaults to the current site’s owner id) and meta_name, which describes the name of the meta info you want to retrieve. To get the user’s last name, for example, you would simply add a [wu_user_meta meta_name=”last_name”].

Another advantage of this approach is that WordPress already uses meta data to store major information about the user. If you create fields that match the specific keys used by WordPress, that information will get automatically updated. That means that in order to update the First and Last Name fields on the user profile’s page, you can just create two fields with the ids of first_name and last_name, like in the example above.

Customizer Support

Having a neat way of adding steps and fields with simple functions is helpful, but we would like to take this one step further. WordPress comes equipped with a powerful customization tool – the Customizer – and WP Ultimo should be able to take advantage of it by allowing network admins to add, rename and reorder steps and fields directly on the customizer with live preview support.

Version 1.4.0 starts to implement those functionalities with Step Renaming and Reordering. Everything else is in place and we should be able to release adding new steps and fields directly from the customizer in the next couple of versions, a few days from now. As you can see in the demo below, the Customizer picks up custom steps added via the functions described earlier.

2017 08 08 03. 20. 55
Customizer Integration: Reordering and Renaming

Also, starting on version 1.4.0, all the styling options are mirrored on the customizer, meaning that you can now have instant feedback as you change colors and other elements.

2017 08 08 03. 07. 36
Customizer Integration: Styling Options

This first version of our Customizer Support can be accessed via the button present on WP Ultimo Settings -> Styling.

Screen shot 2017 08 08 at 03. 29. 13
Customizer Launcher

Coupon Codes

Part of the coupon code handling was refactored in version 1.4.0. Network admins can now select between 3 different Coupon Code behaviors: disabled, coupon codes via URLs only (?coupon=CODE on the sign-up link) – where no field will be displayed on the sign-up form -, and allow coupon codes both via URL and via the sign-up field.ç

Screen shot 2017 08 08 at 02. 15. 01
New Option: 3 different behaviors to handle Coupon Codes

Copying the share link for the coupon code is much easier now and it can be done directly from the list table or on the Coupon edit’s page.

Screen shot 2017 08 08 at 02. 13. 37
Clicking copies the link to the clipboard
Screen shot 2017 08 08 at 02. 13. 21
Copying the Shareable Link directly from the edit page.

Important: There is a backwards-compatibility break in the coupon handling: URLs containing coupon codes are now yoursite.com/…/?coupon=CODEHERE and not yoursite.com/…/?coupon_code=CODEHERE, as it was in previous versions. If you have links with coupon codes somewhere you should update the URL.

Plain Emails

WP Ultimo now allows you to send emails on a plain email template. This is useful if you plan to use any third-party plugin for email template customization. And just to remember you, these email templates can be swapped using the new template overrides functionality we discussed above.

Screen shot 2017 08 08 at 02. 30. 55

General Fixes

A number of small fixes were solved in version 1.4.0, including broken URL and paragraphs handlers on the Broadcast Emails. WP Ultimo now only displays broadcasts published after a user on the target group registered, preventing new users from being bombarded by all the previously published Broadcasts.

Under-the-hood improvements

We’ve compartmentalized the process of creating new accounts on WP Ultimo into two different stages: user creation and site creation. That change will allow us to add the option of letting clients create only users (with no associated sites, like WP Multisite normally allows them to) in the future. Logs on the system info page can also be deleted and downloaded now. Despite PHP inability to handle async processes, we managed to use a new technique to allow our screenshot scraper to work without taking your site down up to 80 templates at a time.

What’s next?

The priorities on our list are finishing up the customizer integration with full form-builder capabilities.

We run into some considerably large issues trying to implement single payments to our current gateway structure. That difficulty made it almost impossible to implement Extension Sales and Tax Settings (long waited features).

Our goal with the versions between 1.4.0 and 1.5.0 is to gradually rewrite those parts of the code (to ensure backwards compatibility), taking these new features into account.

That being said, we realize that we are well-beyond the promised date for the release of the Extension Sales feature on the Plugin and Theme Manager Add-on.

Due to that reason, if you bought the add-on solely because of that feature, in the hopes that it would arrive soon, just contact us via email and we will refund you on that add-on purchase even if more than 30 days have passed. 

 

Complete Changelog – Version 1.4.0 – 08/08/2017

– Added: Option to copy Coupon’s shareable links on the All Plans and Edit Plan pages;
– Added: Templates overrriding for sign-up and emails;
– Added: Helper function to create users with subscriptions: wu_create_user();
– Added: Helper function to create a new WP Ultimo network site: wu_create_site();
– Added: Fields and Steps API to the Sign-up flow;
– Added: Helper function to add new sign-up steps: wu_add_signup_step();
– Added: Helper function to add new sign-up fields: wu_add_signup_field();
– Added: Deleting users and sites now removes the mappings associated with those sites;
– Added: Option on the Email Settings to allow plain emails to be sent;
– Added: Logs are now downloadable and delectable;
– Added: Option to hide the Plan Selection step if there is just one plan available on the platform;
– Added: Three different behaviors added to Coupon Code: disabled entirely, only via URL code or via URL code and Sign-up field;
– Added: New shortcode wu_user_meta to retrieve user meta information on the front-end. Useful for retrieving information collected during sign-up using custom fields;
– Improved: Shortcode wu_plan_link updated to work with the new Sign-up codebase;
– Improved: WP Ultimo now checks for empty user role options to rebuild them if needed;
– Improved: WP Ultimo now only displays broadcasts published after a user on the target group registered. This prevents new users from being bombarded by all the previously published Broadcasts;
– Improved: Better template selection field;
– Improved: Refactorization of the Screenshot Scraper: it now can handle up to ~80 without crashing;
– Fixed: WU_Colors being added more than once;
– Fixed: Coupon validation functions was not checking for post type, only for post titles;
– Fixed: Fixed some broken elements on the Coupon Codes list table;
– Fixed: Links breaking on Broadcasted emails;
– Fixed: Missing variable declarations inside template_list and pricing_table shortcodes;
– Fixed: Broadcast emails now supports multiple lines;

Share this post

Facebook
Twitter
LinkedIn
Email

9 thoughts on “Release Notes – WP Ultimo 1.4.0: A step towards building the Ultimate Subscription-based Network Solution”

  1. Avatar of glenton samuels
    Glenton Samuels

    I like the new features and changes.

    However, I was hoping the “setup fee” or “Initial fee” feature would make it into this release.

    Hopefully, it’s in the next one.

    1. Avatar of arindo duque

      Hi, Glenton.

      As we explained in the last portion of the post, we need to make some adjustments to how we handle payments right now in order to get it to work with setup fees.

      I’ll do these changes gradually between versions 1.4.0 and 1.5.0, then implementing setup fees will be a breeze. I won’t take long!

      Kind regards.

  2. Avatar of glenton samuels
    Glenton Samuels

    I like the new features and changes.

    However, I was hoping the “setup fee” or “Initial fee” feature would make it into this release.

    Hopefully, it’s in the next one.

  3. Avatar of galen

    Great work as always, Arindo. We really appreciate the time you’re putting into this. Pro Sites needs an alternative and you’re making a great one. Looking forward to trying out these new features.

Leave a Comment

Your email address will not be published. Required fields are marked *

Related Posts

WP Ultimo 2.3.1: saying goodbye to Freemius SDK

For sometime now, Freemius SDK has been a source of problems and conflicts with other plugins for some of our clients. While designed to serve the diverse needs of plugins utilizing Freemius, it often emerges as a constant complaint due to its heavy codebase. The intricacies of this SDK have, at times, left us grappling

Read More →
Release
Lucas Carvalho

WP Ultimo 2.3.0: Custom Meta Fields, Webhook Fixes, and a New Release Strategy

TL;DR: WP Ultimo 2.3.0 rolls out with features such as custom meta fields for better customer data management, webhooks triggering corrections, and localizations for Portuguese, Spanish, and French. Not to forget, an improved autoload system that ensures better plugin compatibility. Finally, we have a new release strategy to ensure versions are released more consistently and potential risks on updates are minimized.

Read More →
WP Ultimo 2.2.2 and 2.2.3
Release Notes
Juliana Dias

This week in WP Ultimo: What changed in 2.2.2 and 2.2.3

Versions 2.2.2 and 2.2.3 bring some fixes and improvements. Highlights include resolving issues with Invoice PDF loading, displaying error messages in form modals, ensuring correct period selection in multi-step forms, improving the site data duplication process, and fixing a specific issue with popup form submissions.

Read More →
Version 2.2.0 released, added full support to PHP 8.2
Release Notes
Gustavo Modesto

WP Ultimo 2.2.0: PHP 8.2 Compatibility and More!

The latest release of WP Ultimo, version 2.2.0, brings a host of improvements and fixes to elevate your experience. The highlight of this release is the added support for PHP 8.2. Additionally, we’ve addressed several issues reported through support tickets, enhancing the overall stability and functionality of the product.

Read More →
Release Notes
Allyson Souza

WP Ultimo 2.1.4 Release: Enhancing Automation and Improving User Experience

We’re excited to announce the latest version of WP Ultimo, version 2.1.4! This release introduces new events that empower you to trigger emails and webhooks, enhancing the automation capabilities of the platform. Beyond this, we’ve implemented several usability improvements and addressed various issues to ensure a smoother user experience. New Events for Enhanced Automation With

Read More →

Ready to get started?

Easily build your own WaaS platform with WP Ultimo!