The launch of Web Platform Installer 3.0 coincides with the
unveiling of a new Microsoft web dev product: WebMatrix. This free app gets
bundled with most, if not all, of the installs done through WPI. WebMatrix has a
lot to offer web developers and is a convenient tool to use either for rapid
site design or for getting started with web development on Windows. As such, it
deserves, and will get, deeper exploration in other articles on this site. But for
now, take a look at how Web Platform Installer drops you directly into PHP
First, download and install the latest version of WPI.
The crown jewel of WPI is its ease of use. If you’ve
attempted PHP development on Windows in the past, you’re probably still scarred
by all the under-the-hood tweaks required to configure your system. And that’s
just getting a basic PHP page to work, much less a full-fledged CMS like
Joomla! with a back-end MySQL database.
As you’ll discover, WPI undercuts all of that. A single
automatic install configures all of your pre-requisites, IIS, database,
hookups, and even a sample site to help you get started. In Web Platform
Installer, go to Applications and find the latest version of Joomla!. Click
You’ll notice the lower left now reads “1 Item to be installed”. Click it and you’ll see a list of everything that will be added to your system automatically. With that one click, WPI will sniff out everything you still need to get started and install it for you. This includes any or all of the following:
· Microsoft WebMatrix
· Microsoft .NET Framework 4
· Microsoft SQL Server Compact 4
· Microsoft SQL Server Compact 4 Tools
· ASP.NET Web Pages
· ASP.NET Web Pages Language Packs
· SQL Server 2008 R2 Management Objects
· SQL Server Native Client
· SQL Server System CLR Types
· Web Deployment Tool 2.0
· IIS Express
· PHP for WebMatrix
· Web Deployment Tool 2.0 without bundled SQL support
· MySQL Connector/Net
theforClick Install to get it going.
If this is your first time installing MySQL, you’ll get some
prompts to set up your database. First, you’ll be prompted from the MySQL
installation script to install MySQL locally or remotely.
After that, you’ll be prompted to create a new password for
your “root” account. Keep track of this password. Not only will you need it for
the Joomla! install, you’ll also need it for any other app installation, from
either Web Platform Installer or WebMatrix, that relies on MySQL. Even if you
later blow away your data and uninstall MySQL entirely, it’s tricky to
completely remove all its remnants from your system. A brand new installation
of MySQL will still expect the password you enter here.
When you come to the Joomla! portion of the install, you’ll
get a form for entering all the properties of your app. This includes:
· Whether you’ll create a new database or use an existing one (you’ll only have the option to create a new database if this is your first MySQL app)
· Database Administrator username (default = “root”)
· Database Administrator Password (see why you should write these things down?)
· Database User Name
· Database (user) Password and Password Confirmation
· Database Server (default = localhost)
· Database Name for your Joomla! database
· Database Prefix
· Load Sample Data – choose Yes on this one (see below)
· Website Name
· Site Administrator (default = admin)
· Site Administrator Password and Confirmation
For this walkthrough, it’s highly recommended that you elect to Load Sample Data. Not only does this give you a great headstart to creating your own site, but the sample pages Joomla! gives you comprise helpful documentation in their own right.
Once the install finishes, WebMatrix will launch
automatically. As a standalone app and an integral part of the Web Platform
Installer experience, WebMatrix serves as your hub for your web applications.
It gives you a central place to manage your pages or your databases, edit app
settings, or publish your sites.
From here, click the URL to load your app. If everything
went well with the install, you should see the front page of your new Joomla!
As noted, the sample pages you installed give you a huge
jumpstart on building your first site. But it gives you more than that. Browse
around and you’ll see a Getting Started guide, sample sites, and tips for Beginners,
Upgraders, and Pros.
If this is your first time using Joomla!, here are a couple
of simple site edits to help you get a sense of the possibilities. As with any
Content Management System, Joomla! separates page content from styling and
layout, then stores that content in your MySQL database. To see how site
updates work from an editor’s perspective, click on Site Administrator to log
in to the back-end of your site. Use the Site Administrator login and password
you created during the installation. (Hopefully you wrote that down, as well.)
As Administrator, you have access to the content of the
pages, known as “Articles” in Joomla! parlance, as well as all aspects of the
site structure. This includes Menus, Categories, Users, Modules, Extensions,
Components, Media, and a host of other features. Click on Article Manager.
Here you’ll see a list of the Articles, or pages, currently published to the site or available to be published. They’re organized into individual Articles, Categories, and Featured Articles.
Click on the article titled “Joomla!”. Alternately, you can check the box next to it and click Edit. This is the front page of your site.
Notice that while editing an Article, you have access to
relatively few aspects of that page. The menus, the sidebars, even major
components of the page, are all controlled from different areas of the CMS.
From here, you have access to the page Title, the alias used for this page
(which appears in the URL), its Category, its Published State, and the body
As an experiment, change the text of the page, which should
currently start with “Congratulations! You have a Joomla! site!”
Click Save & Close at the top. Go back to your site and
reload the first page. All of the structure of the page will remain the same,
but the content should reflect your change.
This is just a small taste of the editing process your end users will likely go through when updating a Joomla! site. For most people, especially those without technical skills, a CMS like this offers the power to maintain fresh content without taking up your time as a developer.
But sometimes your users need to do more than update text on
a page. On a typical CMS, once users want to step outside of a very small box,
they call in the developer to build additional components or add interactivity.
Fortunately for you, Joomla! comes with a ton of that stuff prebuilt and ready
to drop in where needed. This makes your life easier, if you’re the one doing
the enhancements. But it also gives your advanced users autonomy to add major
changes of their own, something Windows web apps are not usually known for.
As an example, do a little exploration on your sample site. Under “About Joomla!”, drill down to:
- Using Joomla!
- Using Extensions
- News Feeds Component
- News Feed Category
Joomla! comes with a collection of pre-rolled Components,
including an RSS feed component. The News Feed Category article demonstrates
what the Newsfeed component looks like when deployed.
To manage this particular component, go back to your admin
page. From the top nav, select Components -> Newsfeeds -> Feeds.
From here you’ll see a list of the RSS feeds you were just looking at. Click New to add a new feed, then enter the following information:
Category: Sample Data-Newsfeeds
Hit Save & Close, then go back to your Joomla! site and
refresh the page. The Sample Newsfeed page should look something like Figure
In addition to components like this one, Joomla! lets you take advantage of Modules, Plug-ins, Templates, and literally thousands of Joomla! Extensions. Be sure to check out Joomla!’s Extension site to find new ways to enhance your CMS.
Again, this barely scratches the surface of the power of Joomla!. But it’s enough to show you some of the potential of using a prebuilt PHP app on Windows. Web Platform Installer and WebMatrix allow you to enjoy the power and usability of the most popular, and free, PHP apps on the market right now but without all the headaches of IIS configuration. Best of all, you’re still able to develop ASP.NET apps side-by-side on the same box, leveraging any existing Windows infrastructure you may have while maintaining the maximum number of options for future site development.