MD5.0 Developer Update

After sharing the excitement of the progress made with MD5.0 over the weekend in my last Stream post, today I have decided to write a breakdown of the implications of the new developer tools and file restructuring coming in this monster releases.

While one of the biggest attractions of Marketers Delight 5.0 is the new Optins system, the groundwork below all the visual features you see has been completely rewritten to make expanding WordPress with custom post types, taxonomies, settings pages, and meta boxes easier than ever.

This Thread will focus on the new developer tools in MD5.0 and why they are a big deal. Let’s dive in!

Show thread

First, a primer: why is there such a focus on improving MD’s internal API’s?

This year I was fortunate enough to take on the largest client project of my life and one of the biggest decisions I needed to make at the beginning was whether or not to use Marketers Delight as the base, or develop something from scratch.

Due to the conflicting features and mobility in MD’s internal APIs, I couldn’t responsibly pick MD to use for a project at this scale. While I was excited to develop my first custom theme in over 5 years, I was disappointed MD didn’t fit the bill.

Creating that custom theme challenged me and allowed me to build an entirely new system from a clean slate, and over the past months I have been implementing that newfound knowledge into MD updates, strengthening its integrity undoubtedly.

However the internal API responsible for creating admin pages, meta boxes, and extending the WordPress interface was still not getting improvements due to how big of a job it would be, and with MD5.0 I have finally taken this system to the next level.

Out of the box, WordPress has a very limited interface and that is why it is inevitable you will install Plugins to extend its capabilities. Plugins tend to create their own ways of extending WordPress to add new admin pages, meta boxes, term meta, and after installing just a few of them to your site you may be running all kinds of libraries and custom APIs that all do the same thing.

This is a core problem we want to solve with Marketers Delight being a one stop solution, and to do that it is integral the underlying API’s that extend WordPress and create MD’s new features is solid, reusable, and can be customized by the end user.

So how has this system been changed? Let’s explore the early developer tools being introduced in MD5.0:

Marketers Delight 5.0 File Structure

From a file structure perspective, MD5.0 has been reorganized to have two new folders in the root directory: the /css/ and /templates/ folders. Respectively, these folders contain files that can be overwritten from your child theme to change the default template HTML and logic, as well as even changing the default styles loaded throughout MD’s dynamic CSS system.

The key benefit here is that while a child theme allows you to add your own changes on top of default templates and styles, having root access to these integral parts of your site allows you to make changes to the very core of MD itself.

An integral part of why this change is so exciting is because it truly makes MD your theme to do with whatever you please, and owning your own software just as you own your website’s content is a key philosophical driver of MD’s development.

Marketers Delight Template Files

To look closer inside, MD’s templates have been organized into folders to make finding the templates for all of the different components a breeze. Because MD adds a lot of rich functionality like share buttons, email forms, popups, and more, being able to overwrite these templates help make these powerful features do exactly what you want for the more demanding sites you build.

MD5.0 API

Next up is the overhaul of the MD API, the internal system that makes register custom admin pages and other kinds of settings in WordPress easy. This is by far the most wide spread change in MD5.0 and the most important because every feature in MD is built on this system.

I have never introduced this API publicly because of the cracks in its foundation, but the new API allows you to rapidly create new settings areas around your site by feeding a simple data array.

This system will be documented after MD5.0 is released, and taking advantage of it for your own sites will allow you to build custom interfaces for the custom content you add to your site once, and then have a nice admin settings page to go to any time you need to change something without always having to go back into your child theme!

MD5.0 Popups

As a result of this new API work, creating new custom interfaces with rich functionality is becoming easier and easier. As an early example of what the new Popups listing screen will look like, you can see the kind of admin controls that are possible through the new simple registration system.

To wrap this up, being able to update smoothly from version to version without losing changes on your site is always a priority with each release, and MD5.0 is no different. As ambitious as these changes are, every precaution is being taken to preserve the results we have achieved from old methods with the new methods also in place and I feel very confident that most sites will update smoothly.

The more control MD has taken over our sites, the smoother updates have gone and MD5.0 will be the most solid version of Marketers Delight yet.

That will wrap it up for this Developer update, but I hope this Thread has been interesting and has shown you a glimpse at what is going on with MD under-the-hood. I am posting updates every week until the release of MD5.0, and while this week’s update is at the ground floor we will be moving up each week until the exciting release day.

I hope you’ve enjoyed this update, and don’t forget you can create Threaded updates just like this on your own MD powered website with the Stream!