Blog Sections Open
Using catalogFill to Update Existing Products Instead of Duplicating Them
A practical catalogFill import pattern for stable product synchronization in Evolution CMS.
catalogFill imports work best when one field acts as a stable identifier for matching existing products. Without that, repeated imports tend to create duplicates instead of updating the intended records.
Typical mapping
$cf_config['content_row'] = array(
array('', array(7, 'category')),
array('', array('pagetitle', 'content')),
array('', array('description', 'content')),
array('', array(8, 'tv')),
array('Label', array(23, 'tv')),
);
To update rather than duplicate, the import then checks a chosen field:
$cf_config['imp_chk_field'] = 'pagetitle';
Why this matters
If the check field is unstable or non-unique, imports become destructive. If it is stable and meaningful, catalogFill can behave much more like synchronization than blind insertion.
Recommended practice
Choose a field that stays unique across imports, and use that as the record-matching rule. If product titles may change, use a dedicated external ID instead of pagetitle.
This one decision has more impact on import quality than almost any template or mapping detail around it.
Translating YAMS URL Rewrite Rules for IIS7
How to adapt a YAMS multilingual URL setup from Apache-style rewrite rules to IIS7 URL Rewrite without breaking context prefixes such as /en and /ru.
Exporting Products to XML from Evolution CMS
How to think through XML product exports in Evolution CMS so the data structure, field mapping, and downstream consumer format all stay under control.