All entries filed under “EE Add-ons”
Coverage of interesting new EE Add-ons that are released.
Today, Erik Reagan of Focus Lab was reminded of an experience he had almost starting his own add-on development company:
Some choice bits from the article:
There were a few questions I looked at while planning Sidecar’s business. The biggest of which was our market and how to sell to it. The most obvious concern was how to support the software and not allow the cost of support to kill us financially.
At this point everyone in the EE world was selling a license for anywhere from $10 to $100 and support just came with the purchase. This seemed unsustainable so my plan was to sell the two separately. The license would cost $X and support would be some type of recurring cost model based on the amount of support a customer needed. Interestingly enough, EllisLab announced that type of model not long after. This supported my view of the unsustainable model.
Just before he informed the company that the project was going away:
After reviewing everything I realized the opportunity cost was exceptionally higher than the probable revenue from Sidecar. Focus Lab is too small, too young and way too interested in maintaining an exceptional level of quality with client services. Starting this add-on arm was possible, but only at the expense of our current services. That was unacceptable.
The whole thing is worth a read.
Ryan Masuga gave a sort of State of the State of Devot-ee & EE Add-on Development today on the website’s blog.
He introduced two major changes to how Devot-ee operates:
- Add-on sellers will be able to impose a download time limit on all purchases.
- Devot-ee is moving to a 70/30 revenue split with sellers.
Both make sense to me.
The timed downloads help address the ongoing support issue for add-ons. Effectively, a customer can purchase the add-on once and then the developers are on the hook for support for, well, forever.
The developers’ only recourse for recouping their time spent on add-on development is to release a paid upgrade version. They still have to support 1.0 of an add-on that is on 5.0. Not sustainable. Devot-ee is giving them a tool to try to help.
The revenue share is between add-on developers and Devot-ee. If you deem it too steep (it’s not), then you are not obligated to sell. Some add-on developers make the choice to sell add-ons exclusively on their own. Some others make the choice to sell exclusively through Devot-ee.
There was a good series of conversations on Twitter today about this. I am preserving as many as possible using Storify before they disappear into the dark canyons of Twitter.
Before you chime in, hear Ryan out. Read his post here.
DevDemon recently released their Subscription add-on for ExpressionEngine, which makes it easy to sell subscriptions through your ExpressionEngine-powered website.
I’ve been using this in beta over the Summer for some testing on a project of mine. It’s very flexible and, out of the box, it should do everything you’d need from a subscription add-on, including customizing through actions.
Subscriptions also delivers a very powerful Trigger and Action system. Utilizing almost 20 different triggers you can customize actions through an easy to use control panel. These triggers allow your administrator to modify and create new subscriptions without modifying template tags.
Visit the DevDemon site for all the details but here are my favorite features:
- Multiple plan levels
- Expiring card notifications
A nice addition to our selection of add-ons for EE and ecommerce!
Patrick Pohler penned an article on Medium on how to easily add an API to your ExpressionEngine add-on.
Adding an API can help you add-on be more useful and flexible because it can connect to other systems, and allow developer to extend it without hacking the add-on code.
So how are external apps going to communicate to our ExpressionEngine add-on? We’ll need to make sure we can expose API methods that respond correctly to GET and POST requests.
Patrick continues with API code samples for his “Mission Tracker” A-team sample add-on, including a detailed code walk-thru. Very helpful!
Read the entire how-to article
A couple of relevant updates for you on the changes with how ExpressionEngine 2.9+ handles conditionals.
Yesterday, I wrote:
Conditionals are parsed better, simple vs. advanced conditional is now a thing of the past, and there are some nice new operators; you can do simple math and more robust comparisons.
I was, admittedly, glossing over a big change in EE and one that impacts some third party developers. Fortunately, because of the Developer Preview Program all developers who participate had plenty of warning on this change. But it doesn’t mean that this will be a simple transition.
(A month ago, EllisLab wrote a good explanation of the changes to conditionals that is required reading for anyone working with EE.)
Already developers are posting updates for their add-ons to support the new conditional handling and they are trying to get the word out about how their add-ons are affected.
Low Schutte pondered:
As I wrote in last week’s Content Mgmt Outlook email:
The forever problem of moving forward versus not leaving people behind.
Low also wrote up some instructions on how to use his Low Search add-on going forward:
And Mark Croxton, the wizard behind Stash, tweeted:
Stash in 2.9 still works the same but Mark highlights an important workaround.
Mark also has an excellent explanation of the conditional parsing:
In 2.9 EE attempts to parse if/else conditionals before each pass and after the very last pass (or you can think of it as after each pass and before the very first pass), and will do so only if they are “ready” - the variables being evaluated actually exist. Previously, simple conditionals were parsed just before the first pass only, and advanced conditionals were parsed at the end of the very last pass only.
Some add-on updates may be backward incompatible (i.e. not support EE prior to 2.9), so always check the release notes before upgrading an add-on and not EE.
Earlier today, DevDemon announced that they purchased the ExpressionEngine e-commerce add-on Store by Exp:resso.
Brad Parscale, whose company Parscale Media owns DevDemon, is no stranger to buying EE stuff. Last year he bought the rights to the EECI conference (relaunched as the ExpressionEngine Conference) and put on his first event this past Fall in Portland. The next installment of the ExpressionEngine Conference will be October 5-7, 2014 in Alexandria, VA.
He obviously cares about the ExpressionEngine community and tools, so I wanted to find out more about his plans.
About Store, Brad says:
I think Store is a great product and with some new life can make ecommerce on ExpressionEngine more competitive with hosted stores. We are already prepared to announce several new pieces including new add-ons to work with Store.
Brad and DevDemon already have plans for Store, including working toward a Store 2.4 release and a membership module.
The purchase of Store helps create “a stronger DevDemon” and that will result in, according to Brad, “better support, more add-ons and overall a stronger provider of [ExpressionEngine] technology.”
DevDemon added a new add-on to its portfolio: Store by Exp:resso.
DevDemon is thrilled to announce that Parscale Media, the parent company of DevDemon, has acquired Exp:resso, including Expresso Store and Freemember. The acquisition expands DevDemon’s growing product line and efficiencies to provide the very best in customer support and emerging technologies for ExpressionEngine.
From Exp:resso on existing customers:
What does this mean for our existing customers? Nothing will change in the short term. Existing licenses will remain valid, and we will still be providing the same excellent support we always have.
This is a guest post by Tim FitzGerald and is being published along with his detailed chart of localization add-ons for ExpressionEngine. Bookmark both pieces so you can refer to them during your next project. –Ryan
A recurring use case for an ExpressionEngine site is to provide content in two or more languages. EE’s framework includes the ability to translate its own control panel interface, but it doesn’t offer much help when it comes to the site itself.
This article explores the third-party add-ons that exist and compares their features. It may also help you ask important questions as you plan the development of your site.
Full disclosure: I’m not an entirely disinterested party here. I’ve started writing my own open-source add-on, listed my objectives, and wanted to see how it stacked up. I decided to share this list because I thought it could also help others evaluate the different options and find the tool that best meets their need. My goal was not to compete but complement the marketplace; you can find out more on my add-on’s wiki.
Specifically, I looked at:
- How they decide what language to serve (taking into consideration Google’s recommendations, among others);
- How they handle URLs (important for SEO in your target language overall);
- How they translate strings (i.e. form labels, banners, tag lines, and other content that isn’t served from entries); and
- How they manage translated content.
My results (see my comparison table) are based on documentation found online, personal experience when I have some, and in the case of open-source add-ons, inspection of the code. I invite add-on developers and users to report any inaccuracies to @tfitzgee and I will correct.
Remember that there is no one solution; it’s all a question of how important each of these factors are to you, how you like to resolve them, and the time and money you (or your client) are willing to invest.
We’re All Getting it Wrong to Some Degree
One thought that occurred to me while finishing up this census, and was reinforced by a recent article by John Faulds, is that we’re all talking about multilingual (actually most EE developers write “multi-lingual” with a hyphen)… Should we not instead be talking about localization (L10N)?
This is more than a semantic argument. Multi-language assumes that the only variation you need to address is language. But ask a New Zealander if American content is appropriate for him? Maybe yes, if you’re reading reviews on technology products; maybe not, if you’re looking to buy. Currency, store locations, timezones, units of measure (metric vs US/Imperial), legal framework, cultural reference, even spelling… these are all facets beyond just language that may lead you to having different content for different contexts. That is localization. (Or localisation with an s, if you’re a Kiwi.)
Faulds demonstrates these multilingual tools can serve the purpose of L10N, to some extent, but it’s not fully there.
The assumption may be that if you are so concerned about localizing your content to that degree, you should be running multiple sites with different templates altogether. Perhaps so. But I contend that there are scenarios where it makes sense to have it in a single site, and we should be designing our tools with that expanded goal in mind.
Two Real Turnkey Solutions; You Get Your Money’s Worth
There are, to the best of my knowledge, two add-ons that come close to delivering the whole package: Transcribe and Publisher. Both have their shortcomings, but none of those are so great as to rule them out. Both, it should also be said, are paid add-ons. I think that’s fair for the value of the polishing they provide.
I can personally recommend Transcribe, having used it for two sites now. I have not used Publisher as of yet, but it looks promising, and if it’s as complete and if the workflow aspect works as well as advertised, it offers you more than Transcribe for your dollar.
Both of these solutions are database-centric. That is to say any new strings or variables are not in config files. Not that’s a bad thing per se, but a design consideration as your sites development goes through its workflow.
The only gap is that neither of these cover the other localization needs beyond translating strings and entries. You’ll need something else to convert numbers and dates.
Other Add-ons Can Fill the Gaps Left in Native
When it comes to freeware, there’s a hodgepodge of solutions out there. I’ve covered the main ones in this table, but there are other add-ons that can help, like Low Variables and Republic Variables.
To use most of these add-ons, you’ll need a way to tell what language to serve, and you’ll need to structure your entries. The more notable approaches:
All of these approaches you creating subdirectories for each language at your site’s root folder with duplicates of EE’s
index.php, setting a language global variable. With EE 2.8’s template routing you may have a way around this.
- Multi-lingual sites on different domains with ExpressionEngine and Transcribe, July 2013,by John Faulds
- News: Multi Language Module Now Free For Everyone, by Ben Croker
- ExpressionEngine & Multi-language: General approaches, pitfalls, brick walls and RTL languages, Sep 2012, by Peter Lewis
- Intro to multi-lingual sites in ExpressionEngine, May 2012, by Steven Grant
- EE Insider ExpressionEngine How-to Articles, “Multi-language Solutions for ExpressionEngine”, Oct 2011, by Christopher Sandin
- MultiLingual Websites in ExpressionEngine, Jan 2010, by Carl Crawley
A big update to Dash-ee was released today and it sports a a lot of improvements, like multiple dashboards and a new interface.
What’s Dash-ee? It’s a module that allows you to create a completely customizable EE control panel dashboard.
Watch the overview video to learn more.
From their blog post:
Because it seems to happen often enough that ExpressionEngine release cycles significantly affect third party add-on compatibility, we have created an EE compatibility chart on our site that displays a grid of EE support.
If you use Solspace add-ons, bookmark the compatibility chart and then refer to it before each EE upgrade you do.
Smart move by Solspace.
Yeoman is a web app development workflow that makes it easy to generate scaffolds for dozens of web development technologies.
Rob Sanchez made a Yeoman generator for ExpressionEngine add-ons (a fork of one created for modules) that makes it easy to spin up a new add-on package by just answering some questions.
All it takes is running:
to generate a new add-on shell.
A popular tool for connecting to EE and editing your templates breaks when running on ExpressionEngine 2.8.
In a follow-up tweet, Mountee links to two EllisLab blog posts detailing the new EE 2.8 features on Sessions, Login Modals, and Secure Forms and Cleaner Control Panel URLs.
The “a lot of work to fix” note isn’t reassuring. Let’s hope they can make it happen.
Anna Brown has an interesting idea:
If you can’t do the commercial thing, then maybe just put the add-on up on Github and see if people rally behind it.
Freshly released over the weekend, Store 2.2 is out from the fine people at Exp-resso.
The release change you might want to carefully note is that Store 2.2 requires ExpressionEngine 2.7 (and later) now. If you upgrade, ensure you are running that latest version of ExpressionEngine.
I like and use Store. It’s a great e-commerce option for ExpressionEngine.
Read all of the release notes for Store 2.2
Next week at the EE conference, Low Schutte is teaching a class on ExpressionEngine add-on development. The course is over two days and totals 8 hours of learning (and hanging out) with Low.
Low is a great teacher and can easily explain and teach the concepts about EE add-on development. If you learn from anyone, make it Low.
Go here to learn about the class and to register.