b2c-isml_skill
- TypeScript
20
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill salesforcecommercecloud/b2c-developer-tooling --skill b2c-isml- SKILL.md8.2 KB
Overview
This skill helps you author, inspect, and debug ISML templates for Salesforce B2C Commerce. It focuses on ISML tag syntax, ${...} expressions, template includes, modules, and common file locations. Use it to ensure safe output, proper tag placement, and reusable template patterns.
How this skill works
The skill analyzes ISML templates and explains tag behavior, expression evaluation, and include/decorator flows. It highlights tag location constraints, scope rules for variables, caching and content-type requirements, and safe output encoding. It also provides patterns for custom modules and component usage.
When to use it
- Writing storefront templates that mix HTML and server-side logic
- Adding dynamic output with ${...} expressions or method calls
- Creating or consuming custom modules and reusable components
- Implementing page decorators, slots, and includes
- Diagnosing caching, content-type, or tag placement issues
Best practices
- Keep logic minimal in templates; move complex behavior to controllers or helper scripts
- Place <iscontent> and other page-level tags at the top as required
- Prefer <iscomment> for internal notes and to avoid leaking sensitive data
- Use modules in util/modules.isml to standardize component APIs
- Keep output encoded by default; use encoding="off" only when safe
- Enable <iscache> for cacheable pages and vary by relevant parameters
Example use cases
- Build a product tile with <isloop> and loop status (count, first, last) for alternating styles
- Create a pagelayout decorator with <isdecorate> and <isreplace/> to standardize headers and footers
- Define a productcard module in util/modules.isml and consume it across templates
- Include a price component via <isinclude template="product/components/price"/> and format with <isprint style="CURRENCY"/>
- Add URL generation with URLUtils.url/https/staticURL inside anchor and image tags
FAQ
Place templates under cartridge/templates (locale folders like default and fr_FR). Define reusable modules in util/modules.isml and component templates in components/.
How do I prevent XSS in ISML output?
ISML encodes output by default with <isprint>. Avoid encoding="off" unless output is trusted and sanitized.
When must I use <iscontent> or <isredirect>?
These tags must appear before the DOCTYPE declaration at the top of the template to take effect.