Backup, Backup, Backup!

Akeeba Backup Logo

Why Backup A Website?

Everyone with a website knows, or should know, the importance of regular backups. There are many reasons that you may have need of a recent backup. For example:

  • your website could be compromised by hackers
  • the server on which your website is hosted could fail
  • your web hosting company may not have a recent backup of your website (check your terms and conditions - many web hosting companies have no guarantees in regard to backups)
  • your web hosting company could go out of business
  • an administrator could inadvertently delete content or misconfigure your website

Backing up a Joomla Website

Backing up a Joomla website is so easy, there are no excuses to defer this important task.

The undisputed backup tool of choice for Joomla is Akeeba Backup. It is very simple to download, install and run Akeeba Backup which backs up all your files and the database into one neat compressed file. This should then be copied via FTP to your local machine or somewhere else safe.

How Often Should I Back Up?

The answer to this question is usually, "how much can I afford to lose?".

A static website which rarely changes may only need to be backed up once every few months. A website with a few content updates each month might need to be backed up every month. A busy e-commerce website may need to be backed up every day.

How Much Does It Cost?

The free version of Akeeba Backup does an efficient job with the paid version of Akeeba Backup having a few extra features such as the ability to back up to DropBox and elsewhere in the cloud. See the feature comparison for more details.

The Alternative

I was recently asked to investigate a hacked Joomla 1.5 website (not one that I built or looked after, I hasten to add).

The best way to recover from a hacked website is to start with a known clean copy of the website. Unfortunately, the client did not have his own backup so we had to rely on the web hosting company. After many support emails and a few weeks, it became apparent that the web hosting company had no suitable backup.

The only alternative, apart from rebuilding the website from scratch, was to identify and remove all the malicious code. With over 15.000 files in this particular website, it was like looking for a needle in a haystack! Eventually, malicious code was removed from three files and a malicious file was removed to restore the website. This is not the preferred way to restore a hacked website as you can never be 100% confident that you have removed all the malicious code. This method is also more time consuming and costly!

When did you last back up your website?

Website Maintenance and Backup Subscriptions

  Economy Business Enterprise
Monthly Cost $39 per month $69 per month $99 per month
Annual Cost $390 per year* $690 per year* $990 per year*
Third party extensions up to 10 extensions up to 20 extensions up to 30 extensions
Monthly Report Yes Yes Yes
Free initial security audit (valued at $220) Yes Yes Yes
Monitor new CMS and third party extension/plugin updates Yes Yes Yes
High priority CMS updates installed within 24 hours Yes Yes Yes
High priority third party extension/plugin updates installed within 24 hours Yes Yes Yes
Non-critical CMS and third party extension/plugin updates installed quarterly Yes Yes Yes
Monthly off-site backups Yes Yes Yes
Non-critical CMS and third party extension/plugin updates installed monthly No Yes Yes
Installation of web application firewall (e.g. Akeeba Admin Tools Pro) No Yes Yes
Weekly off-site backups No No Yes
Monthly malware scan No No Yes

* Pay 12 months in advance and get 2 months free.

Remository Migration from Joomla 1.5 to Joomla 2.5

Remository Logo

This is the fifth article in a series of Joomla component migration instructions. Published so far are:

Remository Migration

Note: The database tables must be copied across to Joomla 2.5 before installing Remository on Joomla 2.5 as the installation procedure will add new database fields if required. If you do this in the wrong order, the fields won't be created.

This procedure was successfully tested using the following versions:

  • Joomla 1.5: Remository v3.53.13J
  • Joomla 2.5: Remository v3.54.05J2

Migration Procedure

  1. Install Joomla 2.5 in new sub folder.
  2. Migrate core functions including user accounts with SP Upgrade or similar.
  3. Upgrade Remository on Joomla 1.5 to latest version, if it isn't already. Note: You need to uninstall the old version and then install the new version. Since version 3.40, data and configuration are not lost across an upgrade.
  4. Export the 14 x Remository database tables from Joomla 1.5 with "Quick" and "SQL" options. Note: Assuming they are not too large, you can multiple select tables and export and import them as one file:
    • jos_assignments
    • jos_downloads_blob
    • jos_downloads_classify
    • jos_downloads_containers
    • jos_downloads_credits
    • jos_downloads_email
    • jos_downloads_files
    • jos_downloads_file_classify
    • jos_downloads_log
    • jos_downloads_repository
    • jos_downloads_reviews
    • jos_downloads_structure
    • jos_downloads_text
    • jos_permissions
  5. If necessary, amend table prefixes by searching and replacing all of the old prefixes e.g. jos_ to j25_ inside the file(s).
  6. Import the Joomla 1.5 Remository database tables into Joomla 2.5.
  7. If the tables are too big for export/import, and they are on the same server, you may be able to use the copy table operation instead of import/export.
  8. Install the latest Remository version on Joomla 2.5. The database tables are automatically modified with extra fields, if needed.
  9. Check for and copy any files in the file system. Locations will be specified as absolute paths in the configuration.
  10. If paths in the site have changed, you may need to update the configuration.

References:

http://remository.com/faq/remository-upgrades/upgrade-remository/
http://remository.com/faq/remository-general/migrating-remository/
http://remository.com/forum/func,view/catid,5/id,18564/
http://remository.com/forum/func,view/catid,15/id,18376/
http://remository.com/forum/func,view/catid,15/id,18130/

Migrate My Joomla Website

Migrate from Joomla 1.5 to Joomla 3.x

The cost of migrating from Joomla 1.5 to Joomla 3.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 3.x template and other factors. A straightforward Joomla 1.5 to Joomla 3.x migration typically takes at least five hours and costs from around $450.

Contact me for a quote.

Migrate from Joomla 2.5 to Joomla 3.x

The cost of migrating from Joomla 2.5 to Joomla 3.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 3.x template and other factors. A straightforward Joomla 2.5 to Joomla 3.x migration migration typically takes at least three hours and costs from around $250.

Contact me for a quote.

Migrate from Joomla 3.x to Joomla 4.x

The cost of migrating from Joomla 3.x to Joomla 4.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 4.x template and other factors. A straightforward Joomla 3.x to Joomla 4.x migration migration typically takes at least three hours and costs from around $250.

Contact me for a quote.

Creating a Chamber of Commerce Website using Joomla

Mundaring Chamber of Commerce

Mundaring Chamber of Commerce

The latest website created by Webilicious ® is for the Mundaring Chamber of Commerce. The Chamber officially came into existence in August 2011, taking over from The Eastern Hills Business Association and aims to support and promote local businesses in the Mundaring Shire and surrounding area.

As usual, it was a case of finding out about best practice with this type of website and being inspired by existing Chamber websites.

The main challenge with this particular job was working out how to marry a subscription system and a business directory as there did not appear to be any "off-the-shelf" Joomla Chamber of Commerce or similar extension available.

The solution was to use Community Builder with CBSubs and ChronoForms. A new profile tab was created in Community Builder with custom fields created for member business details. Community Builder Field Management enables you to create text fields, drop down lists, drop down multiple select lists, text areas and even full text editor text areas. Members can update their own business directory listing by updating the relevant tab in their profile. The business directory consists of four ChronoForms with PHP code that queries and displays information from the Community Builder tables:

  1. Business Categories - displays an index of categories
  2. Business Listings - displays a list of businesses in a particular category
  3. Business Listing - displays a detailed listing of a particular business
  4. Business Search - search by business name

The PHP code includes a check of the CBSubs subscription status and also checks a "List in Business Directory" = Yes/No Community Builder field so that listings are only shown if members have an active subscription and if they enable the option in their profile.

Subscription Features

All the usual CBSubs subscription features are available. In this particular case, memberships are configured to match the financial year with the new "promotions" plug-in enabling pro-rata payments. GST is also enabled.

Business Directory Features

Members can enter all their relevant business details including the business name, category, address, logo, images, description, phone, mobile, email, website and also social networking links such as Facebook and Twitter etc. Only the fields that are completed are displayed in the business directory listings.

Members can choose multiple categories for their business.

If a subscription expires, the listing is automatically disabled in the directory until the member renews.

Other Features

Other features that make up the website include:

  • "Member Stories" blog featuring stories from Chamber members.
  • "Resources" implemented using the built-in Joomla weblinks feature.
  • Events with various categories implemented using JEvents including "Upcoming Events" module.
  • News with various categories implemented using the built-in Joomla category blog feature.
  • Contact form using ChronoForms.
  • Mailing list and newsletter features are implemented using AcyMailing including a customised template for the client.
  • Comments are enabled on some of the article categories using JComments.
  • Social networking "follow" and "share" features implemented using PGT SocialWeb and Social Media Icon Links.
  • Easy Folder Listing has been installed to make it easy for administrators to upload minutes in the Members Only section.
  • RokStories is used to rotate banner advertisements paid for by sponsors.

The excellent CBJuice was used to help import the existing member data.

Web Design

The "Momentum" template from RocketTheme has been installed and customised with an appropriate background image, transparent main and module areas. The logo is another excellent job from C6 Media Solutions.

Search Engine Optimisation

Basic on-site SEO has been implemented using sh404SEF.

ChronoForms has been configured so that the business directory listing for each business contains the business name in the url.

Feel the Quality

Checking the score in the Nibbler test tool reveals a score of 8.2 which is excellent considering that little to no social networking has yet been done.

Why Joomla

Joomla

Content Management Systems

"Why a CMS" is a better place to start than "Why Joomla".

Leading content management systems have several advantages over traditional website systems. For example:

  • WYSIWYG editing tools make it easy for non-technical users to maintain the content
  • many users can simultaneously administer the website
  • a web browser is all that is required to maintain the website
  • access control enables multiple roles such as editor, publisher and administrator
  • visual presentation is separated from the content through the use of templates which simplifies maintenance
  • features are easily added using plug-ins and modules
  • they are free and open source

These innovations make web development and maintenance more affordable and this is an important consideration for businesses.

Currently, the top 3 content management systems are WordPress, Joomla and Drupal.

Why Joomla

Search and you will find many articles on WordPress vs. Joomla vs. Drupal with some being more objective than others. It's a bit like the PC vs. Mac. vs. Linux debate where few reviewers are completely impartial and often tend to favour the system they are most familiar with. In fact, each system has it's own strengths and weaknesses and one will often be more suitable for a particular purpose.

A larger design firm with several staff may have experts in Joomla, Drupal, Wordpress and possibly other CMSs and can select the most suitable CMS for each job. To be a successful freelancer, the best approach for me is to be an expert in one CMS system rather than trying to keep up to date with three or more and being an expert in none.

Versatility

Joomla may not be the best CMS for a pure blog website (Wordpress is probably better) or have the best performance (Drupal is probably better), but there are nearly 10,000 extensions available to make Joomla a great platform for blogging, e-commerce, forums, galleries, social networking, directories, a combination of these, or anything else you can think of.

Rapid Development

A Drupal/Joomla/Wordpress showdown was conducted during the South by Southwest Interactive festival in 2009 where competing teams had up to 100 hours to construct a website to a specification. The Joomla team were able to achieve a better result in much less time than either of the other two teams:

  Drupal Joomla! WordPress
Total Hours 79.25 57.25 90.5
Hours spent on front end 21.75 15 36.5
HTML Validation No (8 errors) Yes No (8 errors)
CSS Validation No (7 errors) No (1 error) No (21 errors)
Page weight 180K 140K 154K
Lines of custom PHP/JS code 220 30 1,808

As you can see from the results, the Joomla website was completed fastest with the best code quality, the smallest page size and with the least lines of custom code by far.

Ultimately, the cost of ownership of a Joomla website is lower and you end up with a better quality website for the time and money spent.

Conclusion

I choose Joomla as it is the most versatile leading CMS and I can build good quality websites quicker, with more features and more affordably than with anything else. This ultimately benefits you, the consumer!

Update: Check out some Joomla statistics on the official Joomla YouTube Channel: http://www.youtube.com/watch?v=Qjnc0H8utks

References

http://w3techs.com/technologies/overview/content_management/all
http://www.cmswire.com/cms/web-cms/sxsw-web-content-management-system-showdown-update-2-004124.php
http://www.yardstickservices.com/blog/why-joomla-is-a-great-choice-for-small-business-websites