Hacker News new | comments | show | ask | jobs | submit login
Why the GPL does not apply to premium WordPress themes (perpetualbeta.com)
49 points by dangrossman 2433 days ago | hide | past | web | 58 comments | favorite

A related law-review article someone else on HN shared with me: http://web.bu.edu/law/central/jd/organizations/journals/bulr...

My interpretation is that the precedents in that article support this author's intepretations -- WordPress themes and plugins are not derivative works of WordPress. Merely calling simple interface functions is not enough to make a derivative work according to those cases.

Also, it may not be clear at first glance, but the author of this article and several of the commenters are lawyers.

It depends on how you look at Wordpress. Are themes data that Wordpress processes, or are themes programs that use Wordpress as a library? In the first case, it is certain that the GPL does not apply. In the second case, it is certain that it does.

Personally, I see Wordpress as a library for implementing Wordpress themes, and it follows that Wordpress themes must be distributed under the terms of the GPL. (Wordpress could easily fix this problem by making themes data, not code. But they didn't implement it this way, which leads one to believe that the authors intended for the themes to be GPL'd.)

Also, it may not be clear at first glance, but the author of this article and several of the commenters are lawyers.

True, and their analysis of the law is very good (well, it sounds good to me, anyway). But their analysis of the software is not so good; I think they decided on my first scenario, even though the code does not support this.

Personally, I see Wordpress as a library for implementing Wordpress themes

By that tortured logic, the Linux kernel is a library for implementing programs and thus every closed source driver and every closed source program that run on Linux must be GPL'ed. It's pretty clear that the authors really want themes to be GPL'ed but their intent is not the deciding factor here.

There is specific wording in the GPL covering that case.

I am not trying to use "tortured logic" to make a point; I really think this is how Wordpress themes work. Without a theme, Wordpress does absolutely nothing. The theme makes calls into Wordpress to add data and display data. Each theme is its own piece of blogging software that uses Wordpress to abstract away common problems. That's a library.

Another "application" that is actually a library is xmonad. It's a library for writing a window manager that works in a certain way, and it's your "config file" that actually uses the library in such a way as to make a window manager. This is not "tortured logic", it is just good software design. (Although in the case of Wordpress, it's not the right design. Themes should not be applications, they should be data.)

There is specific wording in the GPL covering that case.

Which part of the GPL do you have in mind?

Each theme is its own piece of blogging software that uses Wordpress to abstract away common problems. That's a library.

That's a library under a tremendously contorted definition of library. As I said, if that's the criterion for something being a library, any program that loads and runs extensions is a library. Firefox is a library, Apache is a library, etc. It may be your preferred definition but it's at odds with both common sense and the way the Wordpress people describe their product.


The issue is direction. Themes call into Wordpress to get data. Mozilla plugins are called by Mozilla; if anything, Mozilla becomes GPL'd when it loads a GPL'd plugin. (Remember the whole "kernel taint" issue?)

Anyway, if you want me to dissect a Wordpress theme and show you why I think this, I will. But I think it's obvious if you look for yourself.

I don't think there is a case in which 'direction' figured in a copyright decision. The criteria are much more straightforward than that.

You never answered my question about what specific GPL language excludes the Linux kernel from the kinds of claims you are making about Wordpress. Or Mozilla (you claimed Mozilla loading a GPL'ed extension makes it GPL which is an interpretation that makes the GPL not 'viral' but an actual virus)

On the other hand, it's WordPress where execution begins, and it's WordPress that loads the theme into the interpreter.

This isn't necessarily true - it's quite possible that a Wordpress index template is the first thing run. The idea that copyright law hinges on who called whom first remains preposterous, though.

Possible, but exceedingly rare. For a theme to provide a top-level script, it would be referenced with a URL like mysite.com/wp-content/themes/mytheme/scriptname.php, which would be ugly, brittle, and contrary to the clean-URL style that WordPress promotes. It is nearly universal that WordPress's code responds to a request first, and then dispatches to the appropriate files in a theme depending on the type of request.

It's interesting that the structure of Wordpress affects whether the themes are derivative works. Maybe it's the PHP-soup style of HTML interspersed with PHP function calls that creates the situation you describe. The same system written so that the themes are stored as lists of colors and dimensions to be interpreted by the blog software would keep the themes as non-derivative works.

Definitely. XSLT is something that could work this way -- the blogging software generates an XML document with all the relevant information, and then the XML stylesheet is applied to make the XHTML (or Atom, etc.) result. Additional CSS and Javascript could of course be bundled.

In this case, there would be no question as to the legal status of the theme. It's just a program that transforms the output of another.

The existence of "hooks" further complicates things. WordPress themes are essentially collections of event handler scripts, and those scripts can register callbacks such that when core WordPress functions are called, those callbacks are executed. So, you have WordPress calling the theme calling WordPress calling the theme...

It is only "certain that it does" if all libraries or users of libraries are derivative works, but they're not. The law review article I linked lays out the case law for this, and the precedents are that merely using a library does not create a derivative work of that library. Cases that specifically said that including interface code from a GPL'd library is not a derivative work unless the interface is sufficiently complex -- which "the_title", "the_content" etc. that WordPress exposes is not.

As someone who generally likes the GPL, it's frightening that the line is so blurry. I have written and distributed libraries under the GPL because I think it's reasonable for me to insist that people who find bugs or make improvements give them back to me. But I don't think it's reasonable for me to insist that any user of the library release the rest of their application to me. In my mind at least, an application doesn't seem like a derivative work of a library.

You should learn more about the distinction between the GPL and the LGPL. Whether you make a library that is GPL and include it in a non GPL program, or you have a GPL program and want to include a non GPL library, both cases require all code to be released as GPL.

The GPL does not care about "library" verus anything else. The GPL is somewhat oriented around the constructs of C, but there have been clarifying guidelines from the FSF and in general its not hard to see how everything fits in for another language.

The LGPL, on the other hand, makes specific exceptions for libraries which are linked into an existing application. So long as a proprietary application is using the library in such a way that it could be removed and replaced for another compatible version, it is not considered a derivative work under the LGPL and is not subject to release.

(See boucher's comment for the difference in LGPL and GPL.)

The GPL also doesn't require them to "[fix] bugs or make improvements give them back to [you]".

It merely requires that if they do give the binaries to someone, including you, they have to also make available the modified source to those recipients.

I'm perfectly free to take your GPL code, modify it and run it in-house, including using it in a SaaS or web offering offering, and not give anyone access to the source modifications.

An excellent point. You are correct.

Just a few years ago, weren't we all up in arms about Microsoft's misrepresentation of the virality of the GPL and their attempts to frighten people away from using GPL'ed software? Looks like GPL zealots are doing their job for them now.

At the time, various FOSS luminaries (including rms) signed this -



If you do choose to incorporate GPL code into a program, you will be required to make the entire program Free Software. This is a fair exchange of our code for yours, and one that will continue as you reap the benefit of improvements contributed by the community. However, the legal requirements of the GPL apply only to programs which incorporate some of the GPL-covered code - not to other programs on the same system, and not to the data files that the programs operate upon.

That doesn't sound like 'A GPL'ed program loads your template, making the templated GPL'ed' at all.

  Looks like GPL zealots are doing their job for them now.
I'd like to see some justification for this statement.

In my experience, the people who try to extend the GPL beyond its lawful or reasonable capabilities are more interested in forbidding competition than guaranteeing user freedom. For example, MySQL's bizarre claims that their protocol is GPL'd and that non-GPL reimplementations are infringement, or Matt Mullenweg asserting that the GPL is a construct of the address space.

If RMS or Eben Moglen make a claim regarding the GPL, then it's worth analyzing and debating -- but Joe Nobody, author of Yet Another PHP Blog Engine, cannot be considered a reliable authority on GPL or copyright law.

I'd like to see some justification for this statement.

Microsoft's contention was that using GPL'ed software exposes you and your intellectual property to risk. The motivation of the parties making very broad GPL claims is not relevant - what's relevant is that it is precisely the sort of thing Microsoft was insinuating and precisely the sort of thing the linked missive tries to disclaim.

Joe Nobody, author of Yet Another PHP Blog Engine

Matt Mullenweg is hardly Joe Nobdy, nor is Wordpress Yet Another PHP Blog Engine. He represents his claims as legally sound and offers the opinion of lawyers who are, according to him "the world’s preëminent experts on the GPL". See:


  Does anybody care about Wordpress, though? 
Wordpress is used on 18 million sites. Active blogs -- they track the pings to the version check server when people log in to their administration page.

Does anybody care about Wordpress, though? The only times I ever hear about it are when somebody's discovered another few dozen security holes. It seems to be more of an experiment in poor design than a serious project.

If his beliefs are correct, it is illegal to distribute proprietary software that only runs on Linux.

Does anybody care about Wordpress, though?

Yes. This is a well-established fact.

If his beliefs are correct

If his beliefs were correct, nobody would touch anything GPL'ed with somebody else's penis. His beliefs are either posturing or a sincere misunderstanding of copyright.

Some of the biggest blogs run on it though (cnn, gigaom, techcrunch)

If RMS or Eben Moglen make a claim regarding the GPL, then it's worth analyzing and debating -- but Joe Nobody, author of Yet Another PHP Blog Engine, cannot be considered a reliable authority on GPL or copyright law.

I was with you until you wrote this. Why can't programmers understand licenses? What's wrong with writing blogging software?

I think you're misunderstanding.

There is no reason a programmer cannot understand copyright, and there is nothing wrong with writing unoriginal software. But if somebody's going to make extraordinary, unsupported claims about the law, they need to have some experience or authority to back it up. To my knowledge, Mullenweg has neither.

If Eben Moglen said tomorrow that the GPL applies to any software in the same address space, then it would be dramatic and worrisome because he is a copyright lawyer and is one of the world's leading experts on the GPL. If the cashier at McDonalds said the same thing, I don't think it would deserve the same amount of consideration or concern.

I'm a big fan of Eben Moglen as well, which is why we contacted him and the Software Freedom Law Center to analyze WordPress and give an opinion on themes specifically:


Yet another reason why I am so glad that the Ruby/Rails community standardized on the MIT license: it means that I don't have to care what DHH or Matz thinks about my business model. Just as importantly, it doesn't mean I have to care today what DHH or Matz will think of my business model five years from now.

I am not sure I agree with this analysis. Stallman convinced someone to open-source his entire lisp compiler because the REPL used the GPL'd readline library, and Stallman seemed like he would have taken the issue to court. Wordpress themes depend on Wordpress more than a compiler depends on a line-editing library, so theme authors might want to assume that they only have the protections of the GPL on their side. Anything else may be accidental.

> Stallman convinced someone to open-source his entire lisp compiler because the REPL used the GPL'd readline library, and Stallman seemed like he would have taken the issue to court.

Defeating a bogus lawsuit costs money, so this could have just been the cheaper route (or maybe the guy just wasn't familiar with the cases cited in the article here).

I think it turned out that the clisp author just liked the idea of the GPL, but hadn't fully understood it before Stallman confronted him.

...or maybe this happened before the Galoob case that the OP mentioned, and therefore the compiler author’s lawyers had good reason to fear that a court would side with Stallman.

The GPL is pretty clear on this. I would consider WordPress themes as plugins to WordPress. And thus, we consult the GPL FAQ: http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins

"If a program released under the GPL uses plug-ins, what are the requirements for the licenses of a plug-in?

It depends on how the program invokes its plug-ins. If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.

If the program dynamically links plug-ins, but the communication between them is limited to invoking the ‘main’ function of the plug-in with some options and waiting for it to return, that is a borderline case."

We are all familiar with software licenses that place broad restrictions on what the customer can do (“you may not decompile, reverse-engineer, benchmark, or play FrisbeeⓇ with this Software...”), but if those restrictions have any legal effect at all, it is only because the license is in the form of a contract (“by clicking ‘I ACCEPT’ you agree to all the terms of this License...”) between the software vendor and the customer.

The GPL is, by design, a license rather than a contract, and therefore it cannot forbid any action that copyright law permits. If indeed a WordPress premium theme is not a “derivative work” within the meaning of copyright law, then the GPL cannot touch it, regardless of the GPL author’s intent.

I should preface this that I don't really know much about copyright law. The sticky point to me is that you could write WP themes as binaries called using fork/exec. So in essence, the developer's choice to use WP function calls and variables effectively makes it a derivate work, at least in my opinion.

I'm not a big fan of this, though it makes the most sense in my mind (at least with my opinion mostly biased by the GPL). I remember reading Dries, the found of Drupal, effectively claiming that all Drupal modules were GPL'ed and not liking it so much that I have altered my plans for future Drupal modules (all the better for me, my intellectual property will not be open for all to witness as I intend a more hosted solution which I can charge a higher premium for).

Ultimately, I feel like crusades by open source projects (WordPress, Drupal, etc) to GPL their modules will backfire and create a more restrictive, hosted component to them that they will ultimately regret. Dries did this for this anti-spam module, Mollom. I don't think he'd be so happy if core features like Views or CCK performed identically. Drupal would effectively suck. I guess thats all the more reason to reject the idea that plugins are derivative works.

Remember that the GPL is a copyright license. This means that the only cases in which it matters are when the work is being distributed. The problem with trying to coerce plugin authors into using the GPL is that plugins are usually distributed separately from the core application. This means there's no legal justification for suing somebody who writes a proprietary plugin, because they're not participating in any action relevant to the GPL.

If I wrote an application which supports plugins, and I wanted to prevent a particular non-GPL plugin from being used, the only legally justified way I could do so would be to sue my users. That's right -- I'd have to attack the very people using my software. Not the plugin authors, the users.

Ironically, this means that selling a proprietary plugin is safer than hosting it. I wonder what Dries would think about that.

I believe the use case at hand is, given person Tom who has purchased a premium WordPress theme, is the theme a derivative work, allowing Tom to redistribute the theme to whomsoever he chooses?

It doesn't matter what the GPL says if you're not bound by the GPL. You only become bound by the GPL by contract or, through the power of copyright, by creating a derivative work. If the law says you haven't created a derivative work, then nothing the GPL says matters to you, it has no power.

> The GPL is pretty clear on this. I would consider WordPress themes as plugins to WordPress. And thus, we consult the GPL FAQ

Which says things like "A consequence is that if you choose to use GPL'd Perl modules ... in your program, you must release the program in a GPL-compatible way", which we can see from the cases cited here (or just by reading the actual law) is clearly bogus. And there's no question of your binaries being derivative due to incorporating code derived from the module's header files (because Perl doesn't work that way).

I think one of the most important things to point out, for those relying on the appeal to authority, is that, yes, the author of the linked post is a lawyer, but not one specializing in copyright law. Readers should note mikewas is Michael Wasylik, a real estate attorney at Ricardo, Wasylik, & Kaniuk (http://ricardolaw.com), which focuses on foreclosures and bankruptcy in Florida.

You'll have to forgive me if it sounds insulting, but it was obvious that Mike's profession is not in copyright law, because his arguments and applications of case law are sloppy. Please keep this in mind when considering the validity of the posts, especially if one of the major factors in your thoughts are credentials; copyright law is very complex and its applications to software bring about all kinds of issues that don't exist even in the realm of copyright for other media. It requires an incredibly nuanced understanding of the law at hand and legal precedents of the industry.

But I am not a laywer, so perhaps far be it from me to be speaking up.

Several wordpress developers, both code and themes, were tired of the WP several years ago, and started the Harbari Project, which is an Apache Licensed blogging platform: http://habariproject.org/en/

They left the wordpress project, and picked the ASL license because of their experiences in wordpress.

Its definitely murky at best if they are GPL'd. I would venture to say no. I would also to venture to say that it would be trivial for wordpress to push out a new version (with new wording on the license and a reworked template system) which could make any compatible plugins/themes GPL'd if they wish to move forward and have support for new versions of wordpress.

No, they can't do this unless they have copyright assignment from all the authors. If I contributed code to Wordpress under the GPL, I would expect that that code be GPL'd forever. Wordpress can only change the license if they remove my code. (I haven't contributed to Wordpress, but other people theoretically have.)

Hence why I said a new version of wordpress where previous versions of modifications and themes are non functional. Hence if you wish for your product to be ported to a new version you would need to agree to the new terms.

If they haven't rewritten Wordpress to deal with the plethora of obvious technical problems, it seems unlikely that they would rewrite it for mildly-obscure legal reasons.

If a wordpress theme is all your own work, then no-one else has any business telling you under what terms you distribute it.

The GPL2 tself says... "You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works."

Is the Wordpress founder annoyed somehow that he has helped create a thriving marketplace?

Presumably, he's annoyed that he distributed a piece of software under the terms of the GPL, and others extended it and sold those extensions under proprietary terms. If this was ffmpeg, we wouldn't even have to wonder about it.

To expand on your comment - Matt Mullenweg is often quick to point out that WordPress itself came into being by forking a GPL'd abandonware project. It's because of this that I think he genuinely wants to ensure users of the software have the same opportunities he has had.

Also, regarding the marketplace surrounding WordPress, WooThemes distribute their themes under the GPL and per Andrew Warner's interview with co-founder Adii Pienaar (http://mixergy.com/woothemes-adriaan-pienaar/) they make $2+ million a year and have had some of their code incorporated back into WordPress by Automattic. This should assuage any fears about GPL themes being commercially viable and of Automattic taking a dislike to others making money off of WordPress.

As a big fan of the GPL I don't mean to come across as totally flippant. However, I just don't see a problem with people selling themes.

In a hurry, not enough skills, buy a theme. Skilled with the time to make your own, then roll your own.

You have a choice, you are not compelled to pay for a theme if you don't want to. The software will continue to work regardless.

Unless there is some kind of legal stalking horse that could affect the GPL, I don't see the point of all the fuss.

I use both Wordpress and Joomla and I see the same kind of thriving ecosystem around both projects. Commercial and non-commercial plugins and themes for both. Seems like a good thing to me and I don't see why it has to be an either/or situation.

If I am missing something then I would like to hear it.

There is no problem with selling themes. What may be a problem is distributing a theme under another license.

I think it's unlikely they'll do anything about this as legal action would be detrimental to their community; meaning that this won't be decided unless someone who receives a non-GPL'd theme contests it. This doesn't preclude Automattic/Matt from stating their view and raising a bit of a fuss as you put it in the interim.

To be clear - I'm neither a fan of the GPL, a lawyer or a WordPress user so I don't know whether Automattic is in the right and I'm indifferent as to whether or not they are.

Quite the opposite, and in fact we list a ton of commercial theme folks here:


All are GPL.

That's great. Can't both co-exist?

How about a response instead of a downvote? This is getting stupid.

I asked a legitimate question, which given the fact y'all want to be millionaires selling software deserves an actual response.

I've always considered the fact that this discussion is still going on says a lot about the openness of the gpl as a license. :(

I think it says more about the legal system in general than the GPL specifically. :-(

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact