Jon Atkinson21/12/20

6 min read

Django Unleashed: Why it's a better option for charities than WordPress

The website: the window which allows others to see into your world and the most important element of your charity’s digital existence.

Fundamentally, your website needs to achieve two distinct objectives: showcase what your charity does and provide visitors with a rich, yet easy-to-use, experience allowing them to find what they need and complete desired actions safely and securely.

It is therefore imperative that you choose the right platform to suit both of those key requirements. And, in most cases, this is where Django offers the best solution for your charity.

Django vs WordPress

Firstly, comparing Django with WordPress is like comparing apples with pips.

Django vs WordPress is like comparing apples with pips

Django and Wordpress are very different

This is because Django is what is called a web framework, while Wordpress is a content management system (CMS).

A web framework supports a range of web applications including services, resources and APIs and standardises how code is written, resulting in it being reusable and much easier for integration.

Django uses the Python language, which is a good mix of being simpler than others with a sensible level of flexibility.

According to The Economist: “The language’s two main advantages are its simplicity and flexibility. Its straightforward syntax and use of indented spaces make it easy to learn, read and share … With such a rapidly growing user base and wide array of capabilities, Python might seem destined to become the lingua franca of coding, rendering all other competitors obsolete.”

Wordpress is built using the PHP language and is a sensible option when developing a reasonably straightforward website. The core function of a Wordpress site - the CMS - is easy-to-use and for smaller charities seeking to build something fairly simple in order to tell audiences what they stand for, it is a perfectly viable option.

The reason for the comparison between Django and Wordpress is because of the end result users see and interact with: a website. Websites can be created using Django or WordPress - plus other options - and the decision on which is right for you should depend on what you are seeking to achieve.

When Django is the right option

A popular misconception - and it’s one we hear time after time - is that WordPress is the best option, and it’s easy to see why that opinion is popular.

Starting life as a simple blogging solution, it has expanded, becoming the world’s largest website platform, and now makes up about 35% of the internet. That’s a pretty impressive statistic so it’s not surprising why many organisations see it as the right choice for their new site.

And, for many, it is perfectly adequate and does the job for which it is intended. 

However, if you need your site to not only display content but to provide added layers of functionality and flexibility while also providing a core structure which can last for a significant length of time, then this is where WordPress becomes unstuck.

And where Django comes into its own.

When we begin digging deeper into what charities want to achieve with their website, we often quickly come to the conclusion that WordPress isn’t going to cut the mustard. 

While some organisations are not only happy to, but actually have the desire to, change their website every two years or so, the majority of charities want something which is going to last and grow with them. Understandably, they don’t want to put budget aside for a new website in the not-too-distant future; that money is far better spent elsewhere.

budgeting for a new charity website

Avoid new web-build costs

We have seen many charities in the position of needing to reinvest in a new website a year or two after a build due to platform limitations and the financial impact of maintaining third-party plugins.

In our opinion, that shouldn’t be the case.

Charities should be investing in a sustainable, scalable solution which can deliver to their bespoke challenges. WordPress is far too constrained to be useful in this context; Django - with its power and flexibility - meets those needs effectively.

Security

As online activity grows, awareness and concern around security increases. This relates both to technology and data.

A recent survey shows that more is being spent in this area than any other within digital transformation - and this is especially important for charities. Users and donors need to feel safe that their personal data will not be stolen, while websites themselves need to be robust to cope with potential cyber attacks.

online security

Online security: crucial for charities

And WordPress can fall short on security as a result of its simplicity.

In 2018, 90% of all CMS-powered websites successfully hacked were WordPress sites at a rate of 90,000 attacks per minute.

The reason for such a high number of attacks is twofold: the default log-in page to a WordPress back end is easy to locate by simply adding “/wp-admin” or “/wp-login.php” to the end of the main URL, while the default username is simply “admin”. Hackers can then run automated attacks which generate passwords and, once they get lucky, they’re in.

WordPress relies on themes and plug-ins to create a site and add extra functionality but they regularly require updating which opens up hacking opportunities and leaves you more vulnerable than with other platforms.

Attacks can also be made on the database which sits on your server and this is a common tactic against WordPress sites. And if hackers get access to your server, then the results can be catastrophic.

The Django framework has been created to reduce the likelihood of attacks and security features are enabled by default. It has been developed to protect your site against some of the more common types of attacks such as cross-site scripting, SQL injection and through user-generated content.

This is not to say that it is unbreakable - no technology is 100 percent safe - but put it up against WordPress and there’s only one winner (it’s Django, if you hadn’t worked it out).

Dynamic content

The Django framework has been created using what is known as the ‘batteries included’ concept, meaning developers benefit from being able to use built-in modules and reusable tools and apps. The Django CMS is an example of this.

This allows the focus to be on the bells and whistles which are going to make a charity's website design stand out, as opposed to building the structures.

And the Python language is a developer’s dream - it’s more enjoyable than PHP and makes the production of interactive content easier.

Some very well-known sites are built using Django-Python, including Instagram and Pinterest, and these showcase what can be done with content. WordPress simply cannot match what is possible on these platforms.

Instagram uses Django

Django powers Instagram and Pinterest

Donation platforms

Obviously, one of the key requirements for many charities is the creation of an online donation platform. Because of its power, flexibility and dynamism, Django is perfect for attaching such a platform to the core site, in a smooth manner for users.

Here at Giant, we have created our own online donation platform - using the Django framework and written in Python - which integrates neatly with other technology, thus allowing you to focus on growing your organisation rather than your support systems.

Basic donation plug-ins for Wordpress are available but you’ll need to keep on top of updates for security reasons, and many come with ongoing fees attached in order to get the most out of their functionality.

Charity donation platform from Giant Digital

Seamless donation platform integration

Reusable code

A major benefit of the Django-Python combination is that giving your website a virtual lick of paint or a complete rebrand is a much less demanding task than with other platforms, particularly WordPress.

This is because the core code used to create your website can be reused, meaning that you don’t have to reinvent the functionality wheel to give your site a new look.

You can change themes in WordPress to give your site a new look but this is not a straightforward task. Search for ‘changing themes in WordPress’ and the first result is an article detailing 15 key tasks to conduct to avoid significant problems.

Plug-ins might not work as well with the new theme and items can be lost.

Again, we’d suggest it is better to spend your time on the user-facing improvements you’re making rather than worrying about the back-end technology.

Innovation

Technology is moving at a pace never witnessed before and the Django framework is geared towards taking advantage of this rather than playing catch-up.

This is because business logic - the rules that handle the exchange of information between a database and user interface - is separated from user-facing presentation. In layman’s terms, this means that the core structure and the displaying of content are handled separately.

This provides increased flexibility and allows the embrace of new possibilities such as zero UI (user interfacing) - interfacing with a device without the need for a screen, for example through voice activation - without requiring wide-scale technology change.

Within WordPress, this type of separation does not exist and therefore makes such innovation much more challenging to achieve.

Want to provide donors with the opportunity to tell Alexa to donate a sum of money to your charity? Then the Django framework is your starting point.

The Python language is also considered to be the number one choice for artificial intelligence and machine learning.

It’s no accident that Google uses Python in some of its most important areas such as its search algorithm and YouTube (which had previously used PHP).

smart device could donate to charity website using Django

Django website could take smart donation

Scalability

Using the Django framework means you should never need to worry about the bandwidth of your website. Running a big campaign to drive online donations? Django can handle that. 

As well as Instagram, other high-usage sites and apps use the framework, including Disqus, The Washington Post and web browser Mozilla. 

WordPress sites can deal with high traffic levels but you’ll need extra support such as a content delivery network and plug-ins or external systems for caching, therefore adding to the tools which will require ongoing management.

The Django framework outperforms most competitors in other areas too, such as:

  • Customisable API integrations
  • Custom reports and charts
  • The ability to offer different views for different types of users
  • Custom validation of data
  • Mobile-friendly applications
  • Fine-grained user permissions

Summary

Charities are fully aware of the need for a robust digital strategy, but the specifics remain blurry particularly in an internet world dominated by WordPress. 

While it can be an excellent platform for smaller, simpler projects, charities requiring enhanced functionality, the capability to scale and innovate and a core which allows for ongoing flexibility - all with the peace of mind of stronger levels of security - should look at superior options.

Ultimately, this is why Django is a better bet.

About the author

Jon Atkinson

CTO at Giant Digital

LinkedIn

Jon heads up the development team as Technical Director and founding partner at Giant Digital. With over 20 years as a Python developer, he has the perfect balance of hands-on experience and strategic expertise when it comes to developing innovative and technically sound solutions for charities. He fully understands the importance of user-driven design to create engaging and effective platforms that deliver real impact.

At Giant Digital, we've been creating outstanding charity websites for over 10 years, using Django technology to develop platforms and solutions that integrate seamlessly into your organisation. If you would like to know more about the Django platform and what it might be able to offer your organisation, please do get in touch.

Discuss your next project with us