4

I am publishing product components to Fredhopper via SmartTarget 2014 SP1 which have a metadata field; productSku which I would like to use to filter the results of a SmartTarget promotion content selection.

I have configured the attribute to be live in Fredhopper (following docs), reindexed and republished content, however I don't see this field as an option in the filter fields dropdown in SmartTarget (it is, however an option when editing the promotion in the Fredhopper Business Manager).

When I create an identical field in my schema, but make it a content, rather than metadata field, it shows up and works just fine as a filter field. Is there something special I need to do for metadata fields, or is this perhaps a bug?

2 Answers 2

2

You do not have to do anything special for metadata fields -- they are treated the same as content field. The only difference is that the attribute IDs in Fredhopper are prefixed with "metadata_" to avoid conflicts with content fields with the same XML name.

The only difference between the list in the Business Manager and the one in the SmartTarget Promotion editing screen is that the Promotion screen filters out attributes from other Publications. But it includes metadata fields too.

2

It turns out that this behaviour is due to a customization I have implemented to 'neutralize' the publication id in attribute names. This neutralization converts the attribute name from something in the form:

tcm_{pubid}_{schemaid}_8_{fieldname}

...to something in the form:

tcm_0_{schemaid}_8_{fieldname}

This means that my promotions and filters work across all publications in the Blueprint

This was working fine for content fields, but it seems that (as Peter pointed out) SmartTarget filters out metadata fields with a 0 publication id.

I've updated my customization to de-neutralize/neutralize the publication id in the metadata attributes used for filters when showing/saving and it works just fine now.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.