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.

New Option: Sign-up Custom URL
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.

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.

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.

Customizer Integration: Styling Options

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

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.ç

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.

Clicking copies the link to the clipboard
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.

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. 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. 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. 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. 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

Release Notes
Arindo Duque

WP Ultimo: 2.1 RC 2 and 1.10.16

Hey everyone, how are you doing? I’ll cut to the chase with this update: we’re here to tell you about WP Ultimo version 2.1 Release Candidate 2 and WP Ultimo 1.10.16. WP Ultimo 2.1 RC 2 As I mentioned in the previous post about 2.1, we had hit a major roadblock when it came to

Read More →

WP Ultimo Beta 2 Available and other news

Hey guys, this is a quick update. I just released the Beta 2 build of WP Ultimo 2.0. It addresses a myriad of issues reported by you on the feedback board (you can see the recently closed issues here). This build should appear as a regular update for those with beta.1 installed, but if that

Read More →
Versions
Arindo Duque

WP Ultimo 2.0 – Public Beta available!

Hey there,How are you all doing? So, we’re a couple of days late according to our roadmap, but as I write this post, I’m publishing the first beta release (beta.1) of the new 2.0 version. We were going to release this build as a regular update inside the WP Admin panel, but we are concerned

Read More →
1.10.4
Arindo Duque

Release Notes – WP Ultimo 1.10.4

Hello, everyone! WP Ultimo 1.10.4 is here and we have a couple of important things to share with you. Stripe SCA Update Strong Customer Authentication (SCA) came into force on September 14, 2019. The rule is a requirement of the European Union Revised Directive on Payment Services (PSD2) and establishes that electronic payments need to

Read More →

Release Notes – WP Ultimo 1.9.8 and Add-ons

Hello everyone. WP Ultimo version 1.9.8 is out and, despite not bringing major improvements or new features, it addresses some small issues that were bugging users and super admins alike. These include: Bug in the responsiveness of the template selection step on signup; 502 errors on some hosting providers when the Auto Login after Registration

Read More →

Feature Plugin: WP Ultimo Blocks

Since version 5.0, WordPress has a new editor experience: Gutenberg (now simply called the Block Editor). It completely replaces the old post edit screen and adds a new block-based interface. I’m sure you all have seen it, but just in case you were living under a rock over the past few months, here’s what it

Read More →

Ready to get started?

Easily build your own WaaS platform with WP Ultimo!