Customize and Extend Core SuiteCommerce Advanced Modules

This topic applies to

Applies to

SuiteCommerce Advanced

 

View a Related Video

SuiteCommerce Advanced (SCA) provides a fully functional application that you can use to implement your ecommerce solutions. The Kilimanjaro release of SCA and earlier were designed to give you access to all SCA source code and to let you customize the application to fit your specific business. The source code for the SCA application is organized into modules. You can make changes to existing modules or add new modules to modify or enhance the functionality of a SCA web store. You can change everything from the interface of your site to adding your own custom logic and functionality.

This section outlines the process for using the core SCA developer tools. Follow the procedures outlined in this section if:

  • You are developing a SCA site using the Kilimanjaro release or earlier.

  • You are developing a SCA site using the Aconcagua release or later and you are not using extensions to interact with the Extensibility API.

Important

If you are implementing the Aconcagua Release of SCA or later, the best practice is to use themes and extensions to customize your site. However, if your customizations require access to objects not available using the Extensibility API, use the procedures outlined in this section to extend code using custom modules.


Important

To make changes to SCA, you must have experience working with JavaScript, HTML, and CSS. The level of experience required depends on the types of changes you want to make. The core functionality of SCA can be augmented or modified, but advanced JavaScript programming skills, including knowledge of Backbone.js and jQuery, are required.


Before making changes to SCA, you must read and understand Best Practices for Customizing SuiteCommerce Advanced. When reviewing these best practices, it is important to understand the following concepts:

  • Customize – refers to all changes you make to SCA. Customizations can include new features and modules that you create, extensions to JavaScript functionality, and overrides to JSON or template files.

  • Extend – refers to customizations you make to JavaScript code or style sheets. In the case of JavaScript, this refers to changes that alter or enhance the behavior of properties and methods. This involves using the JavaScript prototype of an object or using a helper method like Backbone.extend.

  • Override – refers to changes where you replace the functionality of an entire property, method, or file with your own custom version. In some contexts, customizing a template, override is the only option. In general, however, you should not use this process when making changes to JavaScript source files or style sheets.

  • Configuration Modification – refers to changes you make to the SuiteCommerce Configuration record user interface by modifying the configurationManifest.json file. This involves creating custom JSON configuration modification files. This method requires the Vinson release of SCA or later.

Before customizing modules, read and understand the following topics: