Author: Scott Bowler

Message from Scott Bowler

ClassicPress was founded with a simple principle: that all decisions were community led and that a single person couldn’t force through their desires. 
My goal with ClassicPress was to create an organisation that could flourish without a figurehead and could continue into the future without relying on a traditional power structure (and to avoid another situation like the Gutenberg fiasco).
Although I was the founder, that didn’t grant me any privileges above and beyond being on the initial guiding committee, and as we know, each committee member can’t hold that position forever. 
Sadly, about six months into the ClassicPress adventure my life changed. I won’t go into any details as the matters are very personal, but suffice to say, it meant I had to step away from my daily interactions with the ClassicPress experiment.
This was not an easy thing to do – I had made promises to the community that I was in it for the long haul and yet in an instant I completely disappeared from the public eye. I pride myself on being a man of my word, and yet here I was breaking those promises. 
For this I truly apologise – both for my sudden disappearance and for leaving my fellow committee members short-handed and for breaking personal promises I made to them. 
I am also eternally grateful to everyone for rallying behind me – the support I received was incredible. I would like to say a special thank you to Michelle Coe – your kindness helped me significantly through this difficult time. Of course, it goes without saying that I’m also hugely grateful to James, Wade, Tim and all the other committee members for quietly and graciously continuing with ClassicPress in my absence. 
ClassicPress has a heart and soul created by the kindness, generosity, honesty and passion of the people who guide it. I’m extremely proud to say that I created ClassicPress – not because we’ve created the first viable fork of WordPress, but instead because of the people who are involved with it. An organisation is only as good as its people, and it’s safe to say that ClassicPress is something truly remarkable because of you – the people involved. 
For better or worse my life has continued to change in the past year, and it is with sadness that today I announce my official departure from the project for the foreseeable future.
However, there is also an element of pride and excitement – ClassicPress has shown that it IS a community-led project and has continued to grow and flourish. I can’t wait to see where it goes next and I hope that one day I can once again contribute to its future. 
~ Scott Bowler,
Founder of ClassicPress

Directors Added to ClassicPress Limited

ClassicPress has, and always will be, a community-led project. My goal from the outset was to create a structure where democracy rules and no single person could change the direction of ClassicPress without oversight and checks and balances.

It is therefore with great pleasure that I announce the appointment of three new Directors to ClassicPress Limited.

Michelle Coe, James Nylen and Wade Striebel have been pivotal in shaping, building and delivering ClassicPress to a worldwide audience and they have proven through actions their commitment to the long-term success of ClassicPress. It is an honour to welcome them as Directors of ClassicPress Limited.

This is an exciting step in the journey of ClassicPress, and I hope over time we will explore more ways to officially give ownership of ClassicPress to the community who continues to bring it to life.

I’d also like to express my everlasting gratitude to my fellow committee members and members of the community. Your generosity and hard work in making ClassicPress a reality is a gift to the world.

Scott Bowler, Founder

Can I use the ClassicPress BETA on a live website? (Yes!)

Switch your WordPress Site to ClassicPress

WordPress 5.0 was launched today and major plugin authors are telling people not to upgrade their websites (see posts by: Yoast SEO, Advanced Custom Fields and WPML). As a result, many people want to switch to ClassicPress (a business-focused fork of WordPress) as soon as possible. The big question on everyone’s lips is: “Can I use the ClassicPress BETA on a live website”?

ClassicPress itself is extremely stable. It has been tested on hundreds of sites with varied setups and our development team lead, James Nylen, has given the green light for us to say it’s safe to use in a live environment (there are no open bugs on our GitHub repository).

So the short answer to the question is YES! On a side note, I switched 55 live websites to ClassicPress as I wrote this article. Everything went perfectly!

You might be wondering why ClassicPress is still in BETA if this is the case. The answer is simple — there are a few things we need to do before launching v1. Specifically:

  • There are a few dashboard areas we still need to convert to being ClassicPress focused rather than WordPress focused (for example, we’re adding a Petitions dashboard widget)
  • There is still the occasional mention of WordPress instead of ClassicPress, such as in the README file
  • Localisation is incomplete

If you would like to switch to ClassicPress, migration is extremely simple — you can download and install our migration plugin which will do the hard work for you (always make a backup first!).

Please note: Please make a backup of your site — ClassicPress cannot be held responsible for any issues that may arise from installing BETA software

There is one plugin that is unhappy with a ClassicPress installation: Wordfence (and for good reason — Wordfence is a security plugin and one of its functions is to detect whether core files have been modified, which of course ClassicPress has done). Please let Wordfence know that you would like ClassicPress compatability!

There are two plugins which conflict with our migration plugin: Disable WP Core Updates Advance and WP Config File Editor. Please disable these plugins if you’re migrating your site.

Ready? We are!

Download ClassicPress

Switch to ClassicPress

How to support ClassicPress on Giving Tuesday

ClassicPress is a not-for-profit and 100% volunteer powered

Make a Donation

Every line of code, every graphic, every support reply on the forum and every contribution is completed by a volunteer working for free. Without the kindness, support and hard work of volunteers, ClassicPress would still be a concept.

ClassicPress itself is setup as a not-for-profit company in the UK, and our promise is to direct any money raised into the continued growth and development of the project. The money you donate will be spent wisely and we will be transparent with how we spend it, releasing detailed annual reports.

It’s important to note that a not-for-profit company in the UK doesn’t have shares, and there are no shareholders to appease — our vision for a community-led project is clear and we are dedicated to making ClassicPress a success for many years to come.

ClassicPress has real costs

Even though the time of volunteers is donated for free, it’s an unfortunate reality that there are costs involved in making ClassicPress come to life. We have:

  • Multiple servers for running the site and systems
  • Paid for security tools
  • Paid for cloud storage accounts to allow for collaboration on design work
  • Paid for email accounts
  • Occasional paid for advertising campaigns (to boost reach of posts on social media during launches)
  • One-off purchases such as premium plugins

ClassicPress has no revenue stream (yet)

At the moment we’re laser-focused on getting ClassicPress ready – our focus is on code, processes, marketing, documentation and support. With limited resources, we are dedicating 100% of our time to activities which will enable us to ship a bug-free first version.

We do have some exciting plans in the works to fund ClassicPress without the need for donations, such as:

  • The development of a ClassicPress plugin directory that includes free, freemium and premium plugins
  • The development of a ClassicPress jobs board that connects employers with ClassicPress volunteers
  • The launch of an online shop selling ClassicPress “swag” (t-shirts, caps, stickers etc)

Can you help support us?

Up until this point, we have not asked for support. We wanted to first show that we are the “real deal”, and with the launch of our BETA we have achieved that goal.

On Giving Tuesday, we ask for your generosity. Can you support us? There are a number of ways you can do this:

THANK YOU! Your support makes all the difference.

ClassicPress BETA release

Please note: ClassicPress is in BETA, but our beta version is well-tested, stable, and ready for use on your site. When ClassicPress v1.0.0 final is available, you will be prompted to update from the beta version.


It is with great pleasure that we announce the BETA release of ClassicPress. Our BETA release comes in two parts:

  • ClassicPress itself
  • The ClassicPress migration plugin

To download either (or both!) head over to our downloads page.

Release highlights

The BETA release is a major milestone and we are excited to introduce some key features, including:

  • ClassicPress automatic updates are now implemented
  • GPG signed releases
  • Work towards serving translations from ClassicPress infrastructure has been completed
  • Old code for compatibility for PHP 5.5 and lower has been removed
  • We have removed/modified more WordPress-specific wording and admin dashboard content
  • All build dependencies kept up-to-date using Renovate
  • Miscellaneous other fixes and development process improvements
  • The new ClassicPress logo and “business-focused CMS” branding has been added

We need your help!

Please help us spread the word about the BETA and, most importantly, please try it out in a test environment for your current websites. The faster we can discover issues, the quicker we can resolve them and move towards our Release Candidate.

If you find any issues, please report them on our GitHub repositories:

In addition, you are more than welcome to submit pull requests and get involved with solving existing issues.

As always, we just want to say a big thank you for all your continued support in making ClassicPress a reality.

Michelle Coe joins the ClassicPress founding committee

It is with great pleasure that we announce the addition of Michelle Coe (Creative Director and Owner of BlueSkyPhoenix LLC) to the founding committee of ClassicPress. Michelle first volunteered her time a few weeks ago, but in short order has made her mark on the community in the areas of design and marketing – as well as general contributions to the community at large.

Michelle has over 20 years of experience providing elegant design solutions for small to mid-size businesses. Since founding BlueSkyPhoenix in 2011, she has created and deployed more than 100 websites, designed 70+ logos, and created countless other designs for her clients’ digital and print needs. Passionate about small business, Michelle partners with her clients to build brand strategies and web designs that convey a professional, positive business image.

“As a small business owner who supports other small businesses through website design, I’m excited about the opportunity that ClassicPress presents, especially in light of the recent controversy surrounding WordPress 5.0 and the integration of Gutenberg into WP Core. Working together with the rest of the ClassicPress team, I look forward to contributing to the evolution of a smarter, more elegant solution for businesses and non-profit organizations.”

Michelle speaks at regional events on topics relating to entrepreneurialism and business development, most recently at the Inaugural Fauquier Chamber of Commerce Micro Enterprise Symposium. She currently serves on the Board of Directors of the Fauquier Chamber of Commerce, and is co-chair of the Fauquier Chamber Micro Enterprise Council. She and her council organized the very successful Inaugural Micro Enterprise Symposium, held in October of 2018.

She previously served as 2017 Vice President of the Warrenton Regional Chamber (GWCC); in 2016 she served as Secretary and Marketing Director of the GWCC. She is also a member of the Haymarket-Gainesville Business Association. BlueSkyPhoenix was selected as recipient of the 2016 GWCC “Entrepreneur of the Year” award.

We’re excited about having someone with such a fantastic track record on the committee, and we look forward to taking ClassicPress forward with her help.

A new dawn – announcing “Sunrise” the first alpha release of ClassicPress

After hundreds of hours of intense work by dozens of volunteers, we’re extremely excited to announce the first alpha release of ClassicPress, codenamed Sunrise. This launch has been a work of sheer dedication, a sprinkling of love, a dash of frustration and a large helping of teamwork, collaboration and enjoyment.

We need your help to test what we’ve built!

There are two specific parts to the alpha launch that need to be tested:

Found an issue?

If you find any bugs or issues, please create an issue on the relevant Github repository:

You are also very welcome to join our Slack channel to chat with the teams – the channels to be aware of are #testing, #core and #migration.

Security issues

If you find any security issues, please disclose them by emailing [email protected] – please do NOT share them publicly, either on Slack or Github.

On a personal note…

I would like to say a HUGE thank you to everyone who has been involved in this process. Words cannot describe how thankful I am to all of you – I’m constantly humbled by the time, effort and passion that people have dedicated to ClassicPress. What started as a protest quickly turned into a movement, and that movement has grown to countless volunteers in just a few months. Without you, none of this could have been a reality. With you, we’ve got an extremely bright future and a path towards delivering a world-class product to businesses who want to have a powerful, versatile and predictable solution for their website needs.

– Scott Bowler

Committee Meeting: The one with the orange

Date/time: 9th October 2018, 5pm – 6.29pm UTC

Todos marked in bold italic.

Committee members present (alphabetical by surname)

  • Pieter Bos
  • Scott Bowler
  • Fredrik Forsmo
  • Rui Guerreiro
  • Ray Gulick
  • Tim Kaye
  • Charles Lecklider
  • James Nylen
  • Daniele Scasciafratte
  • Wade Striebel
  • Dustin Snider
  • Fabian Wolf

Focus of meeting

The agenda contained the following topics

  1. Team updates
  2. Deadlines for launch
  3. Role of the community team (incl. suggestions opened on Github as issues)
  4. Decision on plugin installation screen for v1 (
  5. Process in a nascent project
  6. Orange


1. Team updates

A lot of ground covered, a few todos appeared:

  • Marketing; need to update the tagline on the Github repo – Pieter Bos has volunteered
  • Fundraising: Look to get initial sponsorship from plugin developers
  • Community: Requires more volunteers – marketing to promote

2. Deadlines for launch

To be confirmed by October 31st.

3. Role of the community team

  • Community to put together process for handling community discussions that originate on Github
  • #marketing and #community to meet to define a process for reaching out to potential volunteers
  • first responders to issues on Github should focus on getting the issue in front of the right people

4. Decision on plugin screen tabs (popular, featured etc)

Deferred – requires more discussion

5. Process in a nascent project

This topic ended up being linked to the “Role of the community” topic.

6. Orange (colour of new site design)

This ended up going off on a tangent. Housekeeping for next time: topics which should be decided at a team level should not be added to the committee meeting agenda.

Other Business

invisnet: I’d like to add one final item to the agenda: that the agenda for the next meeting has sufficient detail per item that we don’t end up disappearing down the rabbit hole again as we’ve done twice in this meeting?

Post-committee meeting note from Scott Bowler: This was our second committee meeting, and there are still teething problems. We need to make sure the committee agenda is clear and topics which should be decided at a team level should not be added to the committee meeting agenda.

Committee Meeting: The one with the tagline

Date/time: 26th September 2018, 5pm – 5.48pm UTC

Committee members present (alphabetical by surname)

  • Pieter Bos
  • Scott Bowler
  • Fredrik Forsmo
  • Rui Guerreiro
  • Tim Kaye
  • James Nylen
  • Daniele Scasciafratte
  • Wade Striebel
  • Dustin Snider
  • Fabian Wolf


Available via Slack. Click to jump to meeting start point.
Todos shown in bold italics.

Focus of meeting

The agenda contained the following topics

  1. Tagline proposal: “ClassicPress: No Gutenberg. Great future!”
  2. Team definitions and team leaders
  3. What/how for documentation. I just saw was approved, so let’s discuss the next steps.
  4. Define Slack Premium status (we are reaching the 10000 limit)
  5. Code style for project
  6. Quality assurance
  7. Charles Lecklider has requested to join the committee. Scott Bowler is nominee.
  8. Keeping track of volunteers


1. Tagline proposal: “ClassicPress: No Gutenberg. Great future!”

Approved for v1. A new tagline will be prepared for v2.

2. Team definitions and team leaders

The following teams and team leaders were decided:

  • Development led by James Nylen
  • Security led by James Nylen
  • Community led by Dustin Snider with support from Pieter Bos and Wade Striebel
  • Marketing led by Scott Bowler
  • Documentation – Dustin Snider to ask Pat Dumond to be Team Lead
  • Fundraising led by Scott Bowler
  • QA led by Rui Guerreiro

3. What/how for documentation.

We have been approved for an open source license of The Community team will discuss the next steps and submit a proposal for documentation.

4. Define Slack Premium status (we are reaching the 10000 limit)

Slack Premium costs more than the project can afford. In order to get Premium for free we need to be a registered charity. To become a registered charity in the UK we need annual pledges of at least £5,000.

Scott will ask Slack for an exception whilst we get to this status.

5. Code style for project

WordPress Coding Standards will be used for version 1 and the topic will be revisited for v2.

6. Quality assurance

It was agreed that Rui Guerreiro will put a plan together for Quality Assurance.

7. Charles Lecklider has requested to join the committee. Scott Bowler is nominee.


8. Keeping track of volunteers

It was agreed that the Community Team will put together a plan for keeping track of volunteers, most likely using the ClassicPress membership system.

Other Business

The idea of ClassicPress gigs (a jobs board where only contributors can apply for jobs) was raised by Scott Bowler in the community channel. Rui Guerreiro suggested this topic be discussed. There was a general consensus that providing Contributors with “perks” was a good idea and that the Community Team would explore ideas further.

Resolving merge conflicts on the ClassicPress GitHub

There has been some interest / questions about resolving merge conflicts on GitHub. This happens when two pull requests (PR) change the same part of a file in different ways. We have an example of such a PR here, so I’ll walk through the steps I’m taking to resolve the conflict.

There are GUI tools that make this easier to understand, but basically: there are two different versions of this file, and this interface is asking me which one is correct.

In between the <<<<<<< and ======= markers, there is this line:

This corresponds to my PR: “This line was left in your PR”.

But, in between ======= and >>>>>>>, there is nothing: “This line was deleted in the `master` branch”.

This is because I deleted the line *below* that one in my PR, and in another PR the line that has the conflict was also deleted. So, in this case, the way to resolve the conflict is to delete that entire section

The next conflict is similar: I removed this whole section in this PR, but it was modified elsewhere. Since I still want to remove it, I’ll resolve the conflict by just removing that whole section.

Last one! In this case, this section was _modified_ in two different PRs, and I need to decide what the final version should be after all these changes.

After resolving all conflicts, you get a “Commit merge” button, which adds a new commit to the PR:

All done, now just waiting for the automated tests to make sure I didn’t break anything 😉