Archive
How Multiple Websites & Stores Work
One of Magento’s advanced features allows for management of multiple websites and stores within one installation, and we have an amazing system to support this: GWS – aka “Global, Website, Store.”
- Global: This refers to the entire installation.
- Website: Websites are ‘parents’ of stores. A website consists of one or more stores. Websites can be set up to share customer data, or not to share any data
- Store (or store view group): Stores are ‘children’ of websites. Products and Categories are managed on the store level. A root category is configured for each store view group, allowing multiple stores under the same website to have totally different catalog structures.
- Store View: A store needs one or more store views to be browse-able in the front-end. The catalog structure per store view will always be the same, it simply allows for multiple presentations of the data in the front. 90% of implementations will likely use store views to allow customers to switch between 2 or more languages.
-
Example scenario
Let’s say you want to sell appliances, consumer electronics, and DVD’s and CD’s. For the purpose of this example we’ll separate the catalog into two stores and three websites. The appliance line will be sold on its own website, and the remaining items on another website. You bought appliances.com and coolstuff.com for this purpose. You don’t want customer data and order data to be shared between the two websites, so data sharing will be turn off in the configuration between them.
Under coolstuff.com you create two stores – Electronics, and Media. Consumer electronics will be sold through the electronics store, and the media items through the Media store. Since each line of items is very extensive, it makes sense to create a separate category structure for the Media store and the Electronics store… otherwise the category tree would be large and cumbersome. When the stores are created, you simply assign a different root category to each store.
In addition, you want to feature your catalog for both websites in English and Spanish. To do this, you will create an English and Spanish store view for each of the three stores. When entering catalog data you can switch store views in the admin to create the additional product titles, descriptions etc…
Configuration
The configuration of Magento uses GWS as a kind of tree when setting up the stores. When it is initially installed, all configuration settings point to “default”, meaning the global installation. A check box next to each configurable item can be un-checked in a particular website or store view, to indicate that this item will be specific to this website or store view. For example, you will offer authorize.net as a payment module on both websites, but you only want to offer google checkout on coolstuff.com. In the configuration, you’d select coolstuff.com in the store view drop-down, find the google API settings, and un-check “use default” in the google checkout tab. For this specific website you can now enable or disable google checkout.
All modules in the configuration function the same way.
Moving on to store views – after a store view has been created, you can configure the layout and visual settings of the store view however you’d like – a drop-down allows customers to switch between store views. This will reload the current page with the alternate view. This can be used for multiple languages, but can also be a way to easily do A-B testing between several design packages to see if one yields more conversions. The possibilities are endless!
The above is meant as a basic overview of this functionality – the best way to learn how to set it all up is to install Magento and get in there and start playing around.
Ringmark is Now Open Source
At Mobile World Congress, we announced Ringmark, a browser test suite for building apps on the mobile web. We’ve received overwhelming feedback and interest in helping us build Ringmark in order to make the mobile web better.
Today, we’re excited to announce that we are open sourcing Ringmark so that anyone can contribute tests.
![](https://developers.facebook.com/attachment/html5_rc_ringmark_logo.png/)
Very soon, we will also contribute Ringmark tests to the Core Mobile Web Platform Community Group in the W3C. Our hope is that that Ringmark becomes the canonical test suite for the group, with tests for the specs the specs and feedback of the group baked into Ringmark itself.
You can view the code immediately by going to the GitHub repo at https://github.com/coremob/ and the tests athttps://github.com/facebook/coremob-tests. Start to contribute by joining the Group discussions around the specifications.
It’s important to note that this is just a starting point. We fully expect the rings to evolve as the group makes progress.
This is the beginning of a process, starting with open sourcing the tests. As we continue to build, we’ll continue to open source even more of this work.
Why we Built Ringmark
Before we dive into the details of Ringmark, we’d like to share some perspective on why this is important for us at Facebook – and more importantly to our developers.
Ultimately, we believe that web technologies are important to the future of mobile and that we can help to make HTML5 a well-supported platform for mobile developers to build upon. For those that are building with the web today, it’s a major hurdle to learn native technologies like Objective-C and Java: and we hope that an improved mobile web can unlock a large contingency of developers that could, and will, be developing for mobile.
At Facebook, we work with hundreds of mobile developers, including all of our Platform launch partners and we know the web remains a vital target for many of you.
We learned a lot from these discussions. Most importantly, we learned that the mobile web has great potential, but still needs a lot of work. One of the most frustrating problems was that of fragmentation in mobile browser capabilities and of understanding what’s possible on any given mobile browser.
Ringmark and the Core Mobile Web Platform Community Group are designed to address this problem head-on.
The W3C Community Group includes the perspectives of app developers, browser vendors, OEMs, and carriers — all of the necessary ingredients to help make the mobile web better and raise awareness of our challenges.
Ringmark is designed to be the canonical testing suite for those mobile web browser capabilities. It will help developers know, in a glimpse, whether their app can or cannot run on any given mobile browser. It will help mobile browser vendors build browsers that better serve developer needs and bring better apps and games to consumers.
For example, when a developer hears of a new device running a Ring 1 browser, they’ll immediately understand that 2D games, audio, video, and camera apps can be built on that device.
We believe that Ringmark and the ring methodology bring an empirical tangibility to what HTML5 means on mobile devices.
Keep Focused
The W3C Community Group will now be selecting, augmenting and prioritizing the tests received via Ringmark. As those decisions are made, Ringmark will evolve to reflect the latest recommendations of the Community Group. In the spirit of making progress quickly, this initial version of Ringmark reflects our best attempt at this prioritization.
The test suite is focused on enabling the mobile web to be a viable platform for mobile web apps. It’s also important to outline what this initial version of Ringmark is not focused on. Operating system utility functionality, telephony, and niche apps like flashlight apps or battery monitoring apps are examples which are currently out of scope.
Let’s Move the Mobile Web Forward
We want the mobile web to be a viable platform for app developers to build upon. So let’s move fast, keep our focus, and deliver on that mission.
Get involved by contributing to the GitHub Ringmark repository and by joining the W3C Community Group. Have you runRingmark in a mobile web browser? Spread the word about rng.io and post a photo to the Ringmark Facebook Page or tweet using the hashtag #ringmark.
Tomorrow, in a follow up post, we’ll be posting detailed information about the methodology and rings.
Related articles
- In a commitment to the mobile web, Facebook open-sources Ringmark (venturebeat.com)
- Ringmark, a Mobile Browser Test Suite (tekartist.org)
- Facebook aims to whip the mobile Web into shape (reviews.cnet.com)
- Facebook aims to whip the mobile Web into shape (reviews.cnet.com)
- Facebook aims to whip the mobile Web into shape (reviews.cnet.com)
Open Source and usability: Joomla vs. WordPress
“If Joomla! is Linux, then WordPress is Mac OS X. WordPress might offer only 90% of the features of Joomla!, but in most cases WordPress is both easier to use and faster to get up and running.”
Over the course of the last few years, I’ve been in charge of putting up a number of websites for various companies, often as favors for friends. In most cases, I’ve ended up using one out of two solutions: Joomla! andWordPress. While both of these projects have evolved greatly over the last few years, they are vastly different. Joomla! has always been intended as a ‘fit-all-your-possible-needs’-kind of CMS solution, while WordPress was developed as a blog with CMS capabilities. Recently WordPress has opened up to allow its users to set up a site with static-only material (with the option of a blog-page), without having to hack the code. Hence it’s one step closer to being a direct competitor to Joomla!.
![JOOMLA CONTROL PANEL Joomla Control Panel](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/start_joomla_thumb1.png?w=595)
Joomla Control Panel
![Wordpress Dash Board Wordpress DashBoard](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/start_wordpress_thumb1.png?w=595)
Wordpress DashBoard
I will probably step on a few peoples feelings here, but I will argue that Joomla! is an example of a poorly managed open source project and that WordPress is a very successfully managed one. Certainly I don’t mean that Joomla! is a useless piece of junk, but that the lead developers have quite a bit to learn from WordPress. The main thing that Joomla! is vastly behind on is usability. While it is true that Joomla! 1.5 is a step in the right direction, it is still light years behind WordPress. Let me illustrate with two examples of common tasks.
Example 1: Create a blog-post with an image
Joomla!
From the ‘Control Panel,’ click ‘Add New Article.’
- There are two image buttons. If you use the wrong one, you won’t be able to upload an image (as you will only browse the existing images). You must use the one below the text field.
- Select a ‘Title,’ the right ‘Section’, and then the right ‘Category.’
- Write the content and save.
WordPress
- Select QuickPress in the Dashboard.
- Click on the image icon and upload the image.
- Select title, write your content and press publish.
![write article joomla 'Add New Article' in Joomla!](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/write_article_joomla_thumb.png?w=595)
'Add New Article' in Joomla!
![start_wordpress 'Add New Page in WordPress](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/start_wordpress_thumb2.png?w=595)
'Add New Page in WordPress
Example 2: Create a static page accessible from the menu
Joomla!
- From the ‘Control Panel,’ click ‘Add New Article.’
- Select a ‘Title,’ the right ‘Section’, and then the right ‘Category.’
- Write the content and save it.
- From the top-menu, select ‘Menu’ and ‘Main Menu’ (assuming you want to add it to the main menu.)
- Click ‘New.’
- Select ‘Internal link,’ and ‘Articles,’ and then finally ‘Article Layout.’
- Fill in the title of the object as well as the parent item.
- In the column to the right, you now need to browse your list of articles and select the desired article.
- Press ‘Save.’
WordPress
- From the Dashboard, click ‘Pages.’
- Select ‘Add New.’
- Fill in the title and contents.
- Select the parent item (if other than root.)
- Click ‘Publish.’
![write article joomla 'Add New Article'in Joomla!](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/write_article_joomla_thumb-1.png?w=595)
'Add New Article'in Joomla!
![write article wordpress 'Add New Page' in WordPress](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/write_article_wordpress_thumb.png?w=595)
'Add New Page' in WordPress
Let’s step back for a minute and imagine the following scenario: you’re in charge of putting up a website for a company. They might want to put up about 10 or so pages with various information. According to my experience this is a pretty common situation. You can do this with either Joomla! or WordPress – both are fully capable of delivering this. Assuming you’re going to buy a template to solve the design issue, it will probably take you about an hour with either of the software to get to the first draft (assuming you’ve been working with them in the past.) So far so good. This is where they start to differ. With WordPress you’re pretty much done by now. However, with Joomla!, you’ll probably have to spend another hour or two just trying to re-organize the different modules to fit the template you bought (in many cases, just to get the basics to work.) Next you will end up spending even more time trying to figure out how to re-organize the different menus. You need to link up a particular document to a particular menu-entry (as illustrated above.) If you want a blog-feed, you need to set up a dedicated section or category (I still don’t really know the difference between the two.) Moreover, you need to select the ‘style’ of blog you want.
![edit menu joomla 'New menu item' in Joomla!](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/edit_menu_joomla_thumb.png?w=595)
'New menu item' in Joomla!
![modules_joomla_thumb 'Modules' in Joomla!](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/modules_joomla_thumb.png?w=595)
'Modules' in Joomla!
Let’s say you managed to figure all of that out and that you got the site ready. Now it’s time to hand over the site to the customer. There will obviously be some training involved, and here’s another crucial difference between Joomla! and WordPress. Training someone to learn WordPress takes (in my experience) less than 30 minutes, and they truly understand it. Training someone to use Joomla! takes at least an hour, and they still don’t really understand it.
Again, I’m not saying that Joomla! is useless, it’s that WordPress is a more intuitive piece of software. Let me throw an analogy out there that will probably help you better understand my point. If Joomla! is Linux, then WordPress is Mac OS X. WordPress might offer only 90% of the features of Joomla!, but in most cases WordPress is both easier to use and faster to get up and running. I use and love Linux, it just doesn’t have that elegant touch to Mac OS X does.
To Joomla!’s defense, there are at least two scenarios I can think of where Joomla! is a better fit than WordPress. The first one would be eCommerce. If you install VirtueMart on Joomla! you can be up running with an eCommerce site pretty quickly. However, the problem is that it does not feel like it is a part of Joomla!, but rather as a 3rd party module that works in Joomla! (which is pretty much what it is.) The second one would be a site where you need to have multiple levels of permissions (ie. an extranet). WordPress only offers three levels of permission (public, private, and password protected), while Joomla! is much more flexible.
![settings_joomla 'Global Configuration'in Joomla!](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/settings_joomla_thumb.png?w=595)
'Global Configuration'in Joomla!
![settings_wordpress 'General Settings' in WordPress](https://selvabalaji.wordpress.com/wp-content/uploads/2009/09/settings_wordpress_thumb.png?w=595)
'General Settings' in WordPress
Joomla! is not doomed. It just has a long way to go when it comes to usability. WordPress has really been developed by the KISS-principle, while Joomla! appears to have been developed to solve every problem on Earth (by engineers, for engineers). Going back to the two problems I mentioned above, where Joomla! beats WordPress. I think it would actually be less of a challenge to add support for eCommerce and more permission levels to WordPress, than it would be to improve the usability in Joomla! to reach WordPress’ level.
Just as a side note, a quick line-count on the latest versions of both software reveals that Joomla 1.5.9 has 350,975 lines of codes, while WordPress 2.7.1 has a mere 159,682 (might not be completely accurate, but that’s what ‘wc -l’ said). Hence, even if WordPress only offers 70% of the features of Joomla!, which I am pretty sure it does, their code is written much more efficiently.
Recent Comments