Posts by mordauk

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

So, let’s see, our theme is built using shortcodes or a layout builder, the whole homepage for example. If the user doesn’t install any of the theme-related plugins, he gets a blog theme, nothing else, right? And my another little problem would be the fact that, each theme being unique, having one plugin for shortcodes isn’t enough, each theme has individual features, individual shortcodes, basically demanding a new plugin for each theme. And this only for the shortcodes, if you have a portfolio too, you need another plugin. If you have something else, another plugin, we end up selling more plugins than the whole theme itself, let’s not forget that we’re on ThemeForest and not CodeCanyon.

There are always exceptions, but when it comes down to basic short codes (columns, buttons, drop caps, etc) they are all nearly identical, and those that aren’t identical are simply because they were built by different people. There’s no reason a theme needs to build it’s own set of short codes for columns or buttons when the markup for those will end up being the same as all the others. The same goes for things like alert boxes.

If you have a truly unique short code, fine, put it in the theme, but don’t convolute things by re-including all of the basics time and time again.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

@Net-Labs I’m confused by this:

“Your “quick lines of css” is also no easy feat for mr restaurant owner who wants to cook pasta and now have to work through “css for dummies”.”

Where does the restaurant owner come into play with the CSS? That’s handled by the theme developer. With ~50 of CSS you can easily style all of the most common contact forms, so it doesn’t matter which one is used.

In regards to your table booking feature, why not just turn that into your own plugin that you use throughout your themes? I suspect you already have a framework for the features that you include in your themes, so move it into a plugin and it will behave exactly the same, but with a major advantage: you update it once and all of your themes have the new features and bug fixes.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says


For example, if your theme is based around major portfolio features (filtering, categorization, grids, galleries, etc), build a portfolio plugin that is built specifically with the features you want, then style / implement the features provided by the plugin in your theme.
and what would be the advantage for the end user ? Once theme is replaced and js/css are gone, it would be useless.

One major advantage is that you, the theme developer, can now use the same, shared functionality in multiple themes.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

One key element of using plugins for features that I think a lot of people are missing is that no theme (without exception) should completely rely on a plugin. A theme should still be fully functional without the plugins, it will just be less. It will be a “standard” theme that does what the core concept behind themes is: style the default WordPress functionality.

If the additional plugins, be it WooCommerce, a page builder, a portfolio, etc, are present, the theme provides complete support for them.

As plugin developers, we follow the same concept often by providing “conditional” support for additional features available in other plugins that automatically becomes available if the plugin(s) is active.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says



Also “The text domain parameter must be a string and not a variable or constant.” this is semi silly, there some cases where classes use a constant(filtered) to define the parameter so it can be reused. also there are a few theme frameworks that use a constant.
No, actually is must be a string. Setting it to a constant makes it not actually work.
hmm its working fine for me

I’ll let Otto explain it: http://ottopress.com/2012/internationalization-youre-probably-doing-it-wrong/

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

Also “The text domain parameter must be a string and not a variable or constant.” this is semi silly, there some cases where classes use a constant(filtered) to define the parameter so it can be reused. also there are a few theme frameworks that use a constant.

No, actually is must be a string. Setting it to a constant makes it not actually work.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

There are 25,000+ plugins in the WP.org repo. Will 1000 new plugins be an issue? Definitely not.

Just because 5 themes use the same plugin for the base of their functionality doesn’t mean the themes all have to be identical.

Take WooCommerce themes for example. Each and every one of them uses the same functionality base for creating an ecommerce website, but they can still each be unique by tweaking the behavior of WooCommerce, by utilizing some features and not others, etc.

If you think themes that use the same plugin as the base of their functionality all have to be identical, I’d question whether you even understand how functionality works, whether in a plugin or in a theme.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says


@FinalDestiny If you need 50 plugins to replicate your layouts, you’re doing something seriously wrong.

Quick (by no means conclusive) count:

1. A plugin for a contact form 2. A plugin for a page builder (assuming Envato decides to not allow these) 3. A plugin for ecommerce, if your theme supports it 4. A plugin (maybe) for pricing tables. These are still allowed, so entirely optional 5. A plugin for columns

So I count 5, and 3 of those are optional for the vast majority of themes.
This is coming from somebody that doesn’t even have any items in ThemeForest. It’s easy for you to support these requirements when you obviously don’t have to update all your ThemeForest items.

No, I don’t have themes in Theme Forest (I’m a plugin developer), but I can tell you how many thousands of hours I have lost due to supporting broken themes that these new requirements are meant to alleviate.

Try and tell me that building and maintaining your own contact form (just as an example) that is implemented separately in every theme you build is easier to update than supporting a plugin via just a few lines of CSS.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says


The mentality that “Standards” mean you can’t be creative is so horribly wrong. By embracing standards, theme and plugin developers can build things that work in tandem instead of constantly fighting conflicts.
But if all theme’s functionality need to rely on the plugins, I’m wondering how can theme authors push their ideas and creativity to the edge?

Just because major functionality needs to be in a plugin doesn’t mean you can’t create your own plugins.

For example, if your theme is based around major portfolio features (filtering, categorization, grids, galleries, etc), build a portfolio plugin that is built specifically with the features you want, then style / implement the features provided by the plugin in your theme.

Just because the code exists in a plugin doesn’t mean you can’t be creative. The code is the same no matter where it exists.

Also by placing your major features in a plugin, you can really easily include those features in all of the themes you build. Update the plugin once and all of your themes have the update. So much easier to maintain.

737 posts
  • Has referred 500+ members
  • Has sold $125,000+ on Envato Market
  • Has collected 50+ items on Envato Market
  • Elite Author: Sold more than $75,000 on Envato Market
+7 more
mordauk says

Creating custom post types ruins the whole idea of this thread, since those can’t be moved anywhere else on another theme. It’s as simple as that. If there’s no solution for those, why would there be for shortcodes? They’re both functionalities. And who will provide support in the end for the users using our functionalities in other themes?

No not really. There are always exceptions to the rules, but not having rules just creates a free for all that hurts everyone in the end.

by
by
by
by
by
by