Welcome to the second article in the “Commerce 2.x Stories” series. This time we’re going to talk about addressing, and our efforts to improve the already good Commerce 1.x addressing implementation (addressfield).
By addressing we mean storing, manipulating and formatting postal addresses, meant to identify a precise recipient location for shipping or billing purposes.
Thanks to the work of the Drupal security team, we released Drupal Commerce 7.x-1.10 on September 10 to address an information disclosure vulnerability. Last week we released a companion module to that update, Commerce Username Update, to help administrators manage the username update the release requires. The new version also includes a handful of minor bug fixes and a new feature to better support free order notifications on the checkout form.
Read more to learn more about the patched vulnerability and new feature.
Welcome to the first article in the “Commerce 2.x Stories” series. As Commerce 2.x development heats up, we’ll be covering interesting developments, ideas, and contributors.
Our first topic of interest is internationalization and localization. This involves tasks from translating UIs and content to representing numbers, currencies, and dates in a locale specific manner. It’s also a current pain point with Drupal 7 / Commerce 1.x - especially as it relates to currency management.
One of the greatest additions to the Drupal Commerce contributed module space this year is the Commerce License and Commerce License Billing suite. Together, these modules provide a way to sell access to electronic resources, and track recurring orders, measure usage of resources, and bill customers accordingly. This is a use case that isn't well-addressed by many other popular e-commerce platforms, which are typically focused on shipping physical products rather than managing access to electronic resources like files, software, user accounts, or online content. Commerce License provides a way to tackle essentially any of these use cases using a combination of the Drupal Entity API module and CTools plugins delivered through a module called Entity Bundle Plugin. Bojan Živanovic, the module suite's author, has written about this methodology extensively here: http://bojanz.wordpress.com/2013/07/19/entity-bundle-plugin/
One of the most exciting features of Platform.sh is it’s ability to use Drush makefiles to rapidly prototype sites. By default, new projects can start with a makefile that will automatically add Commerce Kickstart or vanilla Drupal. Then, using the makefile, you can add new modules, themes, and libraries, by simply adding a few lines to the makefile and commiting. When you push the changes to your platform, the entire site will be rebuilt. Plus, whenever you’re in “makefile mode” any extra files that are in the root of the respository get pushed into sites/all/default. So if you have any custom modules, you can just stick them in modules/ and they’ll end up in sites/all/default/modules. This can make your code bases not only small, but far more manageable. You can convert a site that isn’t a makefile into a makefile. And in this post, that’s exactly what we’re going to do.
With the entity API maturing in Drupal 8 as it approaches its first beta, Commerce Guys gathered a variety of Drupal Commerce contributors and maintainers in its Paris office to begin active development on Drupal Commerce 2.x. The week long sprint began with architectural debate and validation incorporating the collective experience of our professional services teams and delivery partners.
Drupal Commerce 2.x will ultimately be a complete rewrite, reflecting the drastic changes in Drupal 8 itself. We’re excited to announce that long-time community contributor and Commerce Guy par excellence Bojan Zivanovic has been added as a co-maintainer to help us make it happen.
One of the most powerful things that you can do to a Drupal site is to add Drupal Commerce. With some modules and a bit of time, you can transform any Drupal 7 site into a revenue generation engine — no matter if you are selling physical products, file downloads, or just wanting to monetize digital content or access. The ability to simply enable commerce on an existing site is very powerful and can open up opportunities that you might not have considered.
One of those possibilities is paid content. This post will walk you through adding paid content to an existing blog site using two modules from our Digital Commerce Suite: Commerce License (CL) and Commerce License Billing (CLB). At DrupalCon 2014 in Austin, in the second half of Commerce by Example, we walked through the process of setting up a blog. The instructions and the demo site archive are here (link above) so you can walk through at your own pace.
Commerce Bundles, while very powerful, isn’t exactly the most user-friendly from a UI standpoint. However, it is very customizable and there are a few things we can do really easily to improve the overall experience:
Using a View for the Bundle Item Autocomplete
Out of the box, Commerce Bundle’s Bundle Item Autocomplete looks solely at the title. This doesn’t scale really well if you give all of your products in a set (e.g. S-XXL shirts) the same name, which is pretty common. So instead, we can modify the widget to use a custom view to load and search for autocomplete suggestions. To enable:
Commerce Add to Cart Extras is a great little module that provides the ability to turn a product listing view into an add to cart form. It does this by providing a new field that you add to a view which provides a quantity text box and makes the entire view an add to cart form. This differs from the existing “Add to Cart” field provided by commerce, which allows you to add a single item to the cart from a list.
This allows you to do some useful things such as creating a bulk order form which lists some or all of the products on your site, allowing customers to enter a quantity directly for the products they want. Or, you can utilize standard Views functionality to create another add to cart form for wholesalers on products with several attributes allowing them to add quantities of each individual product quickly and easily. Let’s take a brief look at how we can do this. Just download and enable the module, and you’re ready to get started.