Vote for e107 in the People’s Choice for best Open Source CMS awards!
As you are probably well aware, e107 has been nominated in the Critic's Choice CMS Awards for best Open Source CMS
. In a tough competition between four other nominees for this award, e107 needs your help
to be voted as best Open Source CMS this year. Cast your vote for e107
by filling in this form
. The voting round ends on October 1st
, so be quick!
Spread the word and let’s make sure everyone in CMS land knows about e107!
Read more...Posted September 7, 2013 | 8:05 am
Nominated for the People’s Choice for best Open Source CMS awards!
As of yesterday, I am extremely excited to announce that e107 has been nominated as one out of the five nominees for the People’s Choice for best Open Source CMS award
As this particular category is the most popular one in the entire Critic’s Choice CMS awards, it truly shows that the tremendous effort by both the e107 team and the entire community
has produced outstanding results with plenty of opportunities for further improvement and growth over the upcoming years.
With great appreciation towards the community, e107 is asking you to prepare for the voting round
, which commences on the 1st of September 2013
. Be sure to vote for e107, so it will win the award! This will result in increased awareness and popularity.
Once again, thank you community
! Let’s continue working hard to improve e107 even further. Not just as a (very powerful) content management system but also - equally important - as a community project.
Read more...Posted August 25, 2013 | 12:41 pm
e107 Community Meetings are now weekly!
We've done two community meetings so far, both turned out the same amount of people and beneficial conversion was had both times. In an effort to increase the exposure of the meetings and allow for more people to attend we've decided to, for the foreseeable future, have meetings every week instead of selecting a day, sometimes a month or more apart and then holding it.
For now, until we get more people involved, we'll be holding a community meeting every Wednesday at 6PM GMT
starting this Wednesday. A link to a countdown timer, and the next meeting date will always
be available here
Since the meetings are being held weekly, there probably won't be a blog post before each meeting. Mostly because there's not going to be a lot of information to pass along that can't be passed along through the GitHub repo or the forum thread
. I will, however, post a blog post every once in awhile to clue people in to the community meeting's existence. Once blog post that will happen shortly is one indicating the plugins that will be discussed in the next few meetings, this way if you want to only attend a meeting if a plugin you care about is being discussed you can.
If you miss a meeting, or you're too shy to attend (you shouldn't be, we're not all that bad), you can always get the logs from this thread
or directly from the repo
Finally, and probably most importantly, the meetings will still be held in the ##e107-community channel over on Freenode (click here if you have an IRC client installed already!
). If you don't have a client, refer to the first community meeting's blog post here
Read more...Posted August 5, 2013 | 5:50 pm
e107 Community Meeting, Number 2
Hello everyone, it's that time again! This blog post was suppose to be posted a week ago, but I got a little tied up with things and couldn't find the time to draft it up!
Long story short, we're going to be holding the next community meeting on July 31st, 2013 at 6PM GMT
. If you have trouble with timezones, you can take a look at this countdown
for an exact time.
As with the previous meeting, it will be held on the ##e107-community channel on the Freenode IRC network. If you have an IRC client installed you can click this link
to join the channel at any time. For an extensive
list of clients for all platforms you can reference the blog post for the first community meeting, here
For those of you who just installed a client, you can typically launch it and type the following commands to join the channel:
The first meeting was basically a trial run, and we learned a lot from it. This time around we're going to only introduce new people and encourage them to only do a quick introduction of themselves. Additonally, from here on out we will be picking a core plugin, ideally from v1, and discussing what we like or dislike about it, as well as what we'd like to see added or removed from it when/if it gets ported to v2. This time around we will be discussing the forum
If you have any questions or concerns, please post them in the comments below!
Read more...Posted July 27, 2013 | 7:50 pm
Nominate e107 for the ‘Critics Choice CMS Awards 2013’!
The Critic's Choice CMS Awards, which started in 2012, helps to bring attention to all the content management systems that people use to manage their websites. You can help bring e107 more publicity by nominating us for this award!
e107 participates in the following three categories:
- Best Open Source CMS
- Best Free CMS
- Best Small to Midsize Business CMS
To nominate e107, simply fill in the form here: http://www.cmscritic.com/critics-choice-cms-awards/#nominate
You have until August 1st, 2013 to get your nominations in.
We hope to get shortlisted so that we’ll be able to move into the further stages of the Awards. The more nominations, the greater our chances!
Read more...Posted July 10, 2013 | 3:38 am
e107 Community Meeting, Number 1
Hello everyone! As was announced in this thread
, we're going to be holding Community Meetings in IRC (##e107-community
on the Freenode server). For now they will be just a fun get together for the community to talk about various e107 related things. The topics for discussion will be picked out prior to the meeting, but that doesn't mean it has to stay on topic! Occasionally we'll have developers stop by and answer any questions you may have regarding the development of both branches (v1 and v2) of e107.
The first meeting will take place on July 10th at 4PM GMT. For a quick countdown you can take a look at this page
. The topics are as follows:
- Introductions. Introduce yourself the the community. Who you are, what you do, what you use e107 for, etc.
- How you found e107. What caught your eye and made you pick e107 over something else.
- If you migrated from another CMS, why? What CMS did you migrate from?
- What are you most looking forward to in v2? What are you not looking forward to?
As I mentioned above the meetings will be taking place in ##e107-community
on the Freenode network. IRC is extremely versatile in that you can connect to the channel via a website
or many standalone programs, browser extensions, and mobile apps. See below for an extensive list.
Standalone programs are generally the most feature rich:
- mIRC (Windows, shareware/free trial)
- XChat (Windows, shareware/free trial - Linux, free)
- HexChat (Windows/Linux, free)
- XChat-2 (Windows,Linux?, free)
- irssi (Windows/Linux/Mac, free)
- Colloquy (Mac, free)
Some popular IM programs offer the ability to connect to an IRC server:
If you don't want to install an IM program or a standalone program, you can try these browser plugins:
- CIRC (Chrome)
- ChatZilla (Firefox)
- Opera has built in IRC functionality.
- I didn't bother looking up an IRC plugin for Internet Explorer, because let's be honest...
And finally, if you'd rather just use your smartphone or tablet:
If you cannot configure your client, app, or plugin feel free to leave a comment below and I or someone else will surely assist you. There are no "best" of any of them, it all boils down to which you like the most. If you don't plan on using IRC for much, or you don't want to mess with configuring something, your best bet may be to just use the web client mentioned above. Likewise, if you use one of the mentioned IM programs you can always just configure the IRC protocol.
If you already have an IRC client (or whatever), you can join us very easily by issuing the following commands:
Additionally, you can navigate to this address in your browser and it will launch your default IRC client and automatically connect you to the server and join you to the channel:irc://irc.freenode.net/##e107-community
Finally, if you miss any meetings the logs will be getting posted on the e107cmn repo on my GitHub page here
. Just locate the date of the meeting and read away. If you are interested in helping us maintain the logs and have a GitHub account contact me directly and I'll provide you with commit access to the mentioned repo. I'm working on a more convenient way for logging the meetings, but I'm not ready to announce what it is just yet. Stay tuned for more information on that!
Read more...Posted June 26, 2013 | 7:45 am
e107 on reddit!
Do you use reddit?
Do you use e107?
Why not use both together?
Do you not know what reddit is? Reddit is a social news network where users can submit information in the form of content or a link to offsite content. Other users can then comment and rate said content as well as share and save content. Given enough upvotes the content can then appear on the front page of reddit.
Subreddits are pages within reddit. Several games (WoW, Guild Wars 2, Warframe, etc) all have subreddits and some of them (Guild Wars 2) pull community input directly from the subreddit and even have developers there interacting with reddit users.
If you create themes, write plugins, modify the core in anyway (hack), or make tutorials about e107, why not post them on the e107 subreddit? Your content will still be hosted wherever you post it, you will still get all the traffic you normally would have gotten, and you will also increase the exposure of said content from the people browsing the subreddit unawares of your existence to begin with. The other immediate plus is all users, new and old, will have a central location to get release news for plugins, themes, and even version releases of e107 itself.
Another amazing benefit is the ability to host AMAs (Ask Me Anything). This can potentially be another outlet for community meetings that could be more accessible to people than IRC, Skype, or a Google+ Hangout since reddit can be viewed in any browser on any device, and apps are out there for Apple and Android devices.
So, what are you waiting for? Get over to the e107 subreddit
and start submitting content!
Read more...Posted June 4, 2013 | 8:40 am
Creating my first v2.x plugin
Not only have I been working with the team to make sure we could get the first alpha out - which I’m hoping everyone is enjoying so far - I've also been preparing my first v2.x plugin
called 'Owe Me!
'. The code is located here: https://github.com/Moc/oweme
is a very simplistic plugin that creates an overview of money that is owed to you by others (be it friends, family or whoever else). It can I thought of creating this when several family members and friends still owed me some money and both the paper as well as my mental notes seemed to disappear real quickly. You know the feeling?
By means of this blog post, I would like to share my experience of building a v2.x plugin considering my limited PHP experience
. I can do some basic editing which is the reason as to why I practically refrained from working on v1.x plugins before. It turns out, my limited PHP skills are sufficient enough to create a v2.x plugin. I hope this inspires and encourages you to try it out yourself as well!
Amongst the many amazing new features in v2.x which I highlighted in one of my previous blog posts, the plugin builder
is a great tool that will be of significant use to you when you want to develop a plugin. It will generate most of the new code for the admin-area of your plugin based on your database structure. The tool also generates the new plugin.xml meta-file, which is used during installation of your plugin. Using this tool has several advantages:
- There is no need to code in the HTML or the process of reading and/or writing to your database (which was still needed in v1.x). On top of that, your interface is consistent with the rest of admin area which makes it easier for end-users to use your plugin.
- You can easily make full use of features such as the media-manager, userclasses, drag-and-drop sorting, batch and inline editing and so on. Let’s take a closer look at what I did to create the plugin:1)
The first thing I did was thinking about the database structure
of my plugin. I found this to be the most important step of the entire process as the database structure is the basis of your plugin. You need to think about how you would like the data of your plugin to be structured. For example:
the Owe Me! plugin has one main table (which contains the ‘entries’) and three other tables: debtors, categories and statuses which contain information about each of these sections. I used these different tables as I wanted the users of my plugin to be able to define their own debtors, categories and statuses.
I used a database tool called phpMyAdmin to actually create the structure. Most webhosting providers offer this tool. More info on phpMyAdmin can be found in this great tutorial: http://www.siteground.com/tutorials/phpmyadmin/phpmyadmin_create_database.htm 2)
A simple export
of my database (again through phpMyAdmin) was all that was needed to get the contents of my oweme_sql.php file. Simply put the table structure in your *_sql.php file. Example data can be added using the *_setup.php files. (* = your plugin folder name)3)
I selected my plugin folder (oweme) in the plugin builder
and it showed me some options like which column names needed options such as batch or inline editing, which columns could be filtered and which columns were displayed or hidden by default. 4)
After the plugin builder generated the admin interface of my plugin for me, I had to make some minor and simple changes
to make sure the dropdowns in my main area were pulling data from a different table in the database (e.g. the ‘debtor’ dropdown needed to pull data from the debtor table in my database). This is done through the init() function
, which is actually really easy to use. Examples can be found in the FAQ plugin, or even in my plugin if you like!
At the same time, the plugin builder had also created a basic plugin.xml
for me which I slightly edited afterwards to suit my needs. 5)
I then started working on the frontend of my plugin. The frontend is the actual area on your website that users can see. In my case this is a simple table that shows all the Owe Me! entries.
The integration of Bootstrap and jQuery
made it real easy for me to style the table. It instantly looked consistent with the rest of my installation which was quite a relief when thinking back about how this had to be done in v1.x. DONE!
I had then finished my first simple v2.x plugin and I actually enjoyed creating it. I may be biased, but this is such an improvement from all the manual and inconsistent work that had to be done when creating a v1.x plugin. The plugin builder created the basic files (admin_config.php and plugin.xml) so I could focus on the frontend of my plugin.
I am no PHP expert and yet I did manage to create my first plugin which got to count for something, right?
I plan on expanding the Owe Me!
plugin to include some new features and make it a little more customisable (e.g. some preferences to set for example the currency). I’ll also be adding LAN files so users are able to translate the plugin into their own language. Feel free to contribute by testing and submitting pull requests to the Github repository. You can also star and/or fork my project to spread the word. Pull requests are welcome!
I’ve added some screenshots below to give you an impression of the Owe Me!
plugin (click to enlarge).
Thank you for reading, feel free to let us know what you think about the plugin creation process and/or my plugin specifically.
I hope to see your v2.x plugin(s) sometime soon!Moc
Read more...Posted May 26, 2013 | 4:26 pm
e107 Inc. releases its initial ‘alpha’ version of e107 v2.
The alpha release is a fact. Over the past few weeks e107 Inc. has been providing sneak peeks of the - by many anxiously awaited - version 2 of e107 CMS. The development team has now reached a stage where it is time to involve the community more actively. We need your help!
As already mentioned in a previous blog post; multiple areas, features and functionalities in the 2.x release of e107 have had limited testing in live website environments. We need your help to make sure all of these features work as they should.
Be aware that the alpha release is a development release. Caution is advised when upgrading from a live website. Always make proper backups before upgrading! The team takes great care in providing a stable system, we don't expect anything to break. Having said that, there are going to be bugs but that is exactly what the alpha is for!These are some of the areas that we would like to receive feedback on:
- The upgrading process from v1.x to v2.x.
This should be a matter of uploading the alpha release files onto the latest v1.x installation. After visiting your website you will be redirected to the admin area where it will assist you in the upgrade process. Your data will be retained but please always backup your data first, as with any update, just in case.
- Backwards Compatibility (BC).
This includes the ability to use plugins and themes (that were originally created for 1.x) on 2.x installations. Anything that worked on a 1.x installation should work on 2.x. (In some cases minimal adjustments may be required).
The forum plugin is an exception to this as it has been heavily modified in the way it stores its data. You can notify us of outdated plugins here: https://github.com/e107inc/e107/issues/195
- New features.
In my previous blog post, I highlighted several new features such as the media-manager and the integration of jQuery and Bootstrap. Feel free to comment on all of those new features. How can you help? Some specific instructions:
The upgrading process is basically the same as with any other upgrade of e107.
1) Backup your website. No matter what you do, make sure you have a complete backup including the MySQL database so you can revert back if needed.
2) Download the v2-alpha1 update
package (link below). If you are currently using different folder names than (e107_*, e.g. e107_plugins), rename the folders in the upgrade package locally first before uploading.
3) Upload all of the files by FTP over your current v1.x installation (preferably the latest) making sure you overwrite existing files.
4) When you navigate to your website, you will be redirected to the admin area to perform updates. In the admin area, there will be a message stating an update is available. Hit that button.
After applying the required updates, you are on the alpha version of v2.
You can also choose to set up a fresh installation of v2.x. A video has been created which illustrates the installation process of a fresh installation:
Here’s what to do next:
- Try it! Report any bugs in the Github issue tracker here: https://github.com/e107inc/e107/issues
When posting issues to Github, please keep this in mind:
1) Be as specific as possible, providing as much information as possible. Errors and screenshots are very useful!
2) Try to limit each issue report to one specific issue rather than including many different problems in one issue report.
- Use the (v2 specific) forums for general feedback such as positive comments or constructive criticism. Feature requests will be welcomed at a later stage (ie. after the stable release). If you are unsure about a bug, the forums are the place to discuss it before posting on Github. This will help to keep the Github tracker clean. - Help by CONTRIBUTING to e107!
If you are somewhat comfortable with coding websites, you should consider contributing to e107
by forking e107 and providing pull-requests. This is THE opportunity to contribute! More info on forking and pull-requests can be found here: https://github.com/e107inc/e107/wiki/Contributing
If you have any questions regarding contributing to e107, please do not hesitate to ask any team member. We definitely welcome new contributors and we would love to see new faces joining us in development.
The first alpha release is here, this means that we are getting closer to the stable release of v2.x. Here are some final notes:
- For now, you will be able to use e107 in the English language only
. Please refer to my previous blog post for an explanation.
- Github provides a wiki
that is currently used for some v2.x documentation. It includes coding standards, contribution instructions and specific notes on v1.x themes and plugins. Take a look here: https://github.com/e107inc/e107/wiki
- This is the first alpha release. The purpose of this stage is to introduce and finalize a release candidate with the participation of current developers and site owners so they become familiar with, and have input on, new standards and functions that will enable them to work with more creativity and fewer restrictions.
You can easily check the ‘pulse’ of the development progression here on Github: https://github.com/e107inc/e107/pulse. This will give you a quick overview of all the development activity in a given period.
It doesn’t stop there! The development team will continue to improve your experience with e107 by adding new exciting features over time. This is just the beginning!Download your copy of the official version 2-alpha 1 here: here
Read more...Posted May 1, 2013 | 2:39 pm