Lier automatiquement les médias
Dans la page Administration > Système > Liaisons automatiques, vous pouvez utiliser le moteur de règles de Quable pour spécifier les conditions de liaison automatique des médias téléchargés à vos documents existants.
Un liaison automatique ne fonctionne que pour un seul type de document. Vous devez créer des liaisons automatiques individuelles pour chaque type de document auquel vous voulez lier automatiquement vos médias.
Convention de dénomination
Les liaisons automatiques exigent que vos médias utilisent une convention de nommage spécifique. Cette convention de nommage est interprétée par la règle définie pour savoir à quels documents lier les médias. Par conséquent, toutes les ressources qui doivent être liées via une règle automatique spécifique doivent suivre la même convention de dénomination.
Pour rendre le processus aussi facile que possible, nous vous recommandons vivement de garder votre convention de dénomination simple. Votre chef de produit Quable PIM peut vous fournir un modèle pour vous aider à créer votre propre convention de dénomination.
Afin de lier un média à un document, Quable PIM a besoin d'une seule information dans le nom du média :
Informations requises | Type de données | Description |
---|---|---|
Identifiant du document | Caractères alphanumériques | Une chaîne de caractères qui identifie un document (code du document ou valeur de l'attribut). |
Exemple 1
Vous devez lier automatiquement les médias à votre type de document produit avec le type de liaison produit_main_pictures. Votre administrateur Quable PIM a créé une règle de liason automatique pour rechercher cette convention de dénomination :
chaîne aléatoire_document code _1 .extension de fichier |
La règle recherche :
- des segments avec des types de données spécifiques,
- séparés par des traits de soulignement ( _ ), et
- une extension de fichier.
Le tableau suivant fournit une description des segments dans cet exemple.
Segment | Type de données | Description |
---|---|---|
chaîne aléatoire | caractères alphanumériques | Il peut s'agir de n'importe quel texte. La règle vérifie uniquement qu'il s'agit d'un contenu alphanumérique. |
document code | caractères alphanumériques | Il s'agit d'identifier le document auquel il faut lier la ressource. Dans ce cas, le document cible doit être du type de document défini dans l'instruction Rule If ("target_document_type ). |
1 | nombre | (optionnel) Cela indique la sequence du média. |
extension de fichier | caractères alphanumériques | Il peut s'agir de n'importe quelle extension de fichier. La règle vérifie seulement qu'il y a une sorte d'extension ici (par exemple, jpg, png, svg). |
Pour respecter la règle de cette liaison automatique, vos médias pourraient être nommés :
picture_bluejean_1.jpg | |
abc123_bluejean_1.png | |
random_bluejean_1.svg |
Pour autant que les noms des médias soient dans le bon format et incluent le code du document et le numéro 1, les médias seront automatiquement liés aux bons documents.
Exemple 2
Vous devez lier automatiquement les médias à votre type de document produit avec le type de liaison produit_pictures. Votre administrateur Quable PIM a créé une règle automatique pour rechercher cette convention de dénomination :
(chaîne aléatoire)document type code -8 .extension de fichier |
La règle recherche :
- des segments avec des types de données spécifiques,
- séparés par des parenthèse ( ( ) ) et un trait d'union (- ), et
- une extension de fichier.
Le tableau suivant fournit une description des segments dans cet exemple.
Segment | Type de données | Description |
---|---|---|
chaîne aléatoire | caractères alphanumériques | Il peut s'agir de n'importe quel texte. La règle vérifie uniquement qu'il s'agit d'un contenu alphanumérique. |
document code | caractères alphanumériques | Il s'agit d'identifier le document auquel le média doit être lié. Dans ce cas, le document cible doit être du type de document défini dans l'instruction Rule If ("target_document_type ). |
8 | nombre | (optionnel) Cela indique la sequence du média. |
extension de fichier | caractères alphanumériques | Il peut s'agir de n'importe quelle extension de fichier. La règle vérifie seulement qu'il y a une sorte d'extension ici (par exemple, jpg, png, svg). |
Pour respecter la règle de cette liaison automatique, vos médias pourraient être nommés :
[picture]bluejean-8.jpg | |
[abc123]bluejean-8.png | |
[random]bluejean-8.svg |
Créer une règle de liaison automatique
Prerequis
Des compétences en codage peuvent être requises puisque le processus comprend la création d'une expression régulière (regex) et de deux déclarations JSON (JavaScript Object Notation).
Étape 1 : Formulaire de nouvelle règle
Dans la page Administration > Système > Liaisons automatiques, cliquez sur le bouton Nouvelle règle. Un formulaire s'affiche pour définir la règle de liaison automatique.
Étape 2 : Nom de la règle
Définissez un nom pour la règle de liaison automatique. Ce nom doit être aussi descriptif que possible.
Information | Request Body Code | Description |
---|---|---|
Slug | nom pour la règle | Saisissez le nom de la règle. |
Étape 3 : Événement de règle
Lorsqu'un média est importé dans Quable PIM, il s'agit d'un événement mediaupload
. C'est ce type d'événement qui déclenche l'initialisation de la règle de liaison automatique.
Information | Request Body Code | Description |
---|---|---|
Événement | mediaupload | Il doit être rensigné exactement comme ceci. |
Étape 4 : Conditions de la règle
Définissez une déclaration JSON contenant les conditions qui doivent être remplies pour que la règle s'applique :
Information | Request Body Code | Description |
---|---|---|
Rule if | Les conditions qui doivent être remplies pour que la règle soit appliquée. Elle doit être rédigée dans le format indiqué dans l'exemple (ci-dessous). Ces conditions identifient :
| |
target_document_type | Le code unique du document qui doit être lié. | |
target_value_type=”code” OU target_value_type=”eav” | ||
target_value=”” | Si
| |
rule=”equal” | Cela indique que la partie isolée du nom du média doit correspondre exactement au type de document ou au code d'attribut. | |
from_value_regex | Une expression régulière (regex) permettant d'isoler les segments de noms des médias (entre parenthèses, également appelés groupes de capture). Les caractères devant être échappés doivent être échappés deux fois avec une barre oblique inverse (par exemple, \\. pour un point au lieu de .). Par défaut, le premier groupe de capture est examiné, à moins que from_value_regex_group ne soit utilisé pour spécifier un groupe.Si vous êtes novice en matière d'expressions régulières, vous pouvez vous référer à ce site. | |
from_value_regex_group | (optionnel) Un entier (nombre) indiquant le groupe de capture à utiliser pour la recherche de documents (1 = premier groupe, 2 = deuxième groupe, etc. ). | |
from_value_type="originalfilename” | Il doit être rensigné exactement comme ceci. | |
from_value=”” | Il doit être rensigné exactement comme ceci. |
Étape 5 : Action de la règle
Définissez une instruction JSON avec l'action à entreprendre si les conditions définies dans l'instruction Rule if sont remplies :
Information | Request Body Code | Description |
---|---|---|
Rule then | Les actions à entreprendre lorsque les conditions de la règle sont remplies. Elle doit être rédigée dans le format indiqué dans l'exemple ci-dessous. | |
action=”createXObject” | Ceci doit être utilisé exactement comme écrit. Il indique à Quable de créer une liaison entre le média et le document. | |
document_type | Le code unique de la liaison doc_type > media à utiliser. Le type de liaison par défaut est article_images_media. Voir Types de liaisons pour en savoir plus sur la création de types de liaison. | |
sequence_regex | (optionnel) Une expression régulière (regex) définissant l'ordre des médias. Note : le numéro de séquence doit être inclus dans le originalfilename du média. | |
target_property="originalfilename" | (optionnel) Spécifie que sequence_regex est dans le nom du média. | |
side_entity=”target” | Ceci doit être utilisé exactement comme écrit. Elle fait du média une entité enfant du document auquel il est lié. |
Exemple
Vous avez un type de document produit avec un attribut dont le code est couleur. L'attribut a deux valeurs possibles (rouge, bleu). Pour lier le média bleu.jpg à tous les documents de type produit dont la valeur de l'attribut couleur est bleu, votre règle serait la suivante :
Voici un examen plus approfondi d'une instruction Rule if :
{
"target_document_type": "produit",
"target_value_type": "eav",
"target_value": "couleur",
"rule": "equal",
"from_value_regex": "\/^([a-zA-Z0-9]*)\\.[jpg|png]\/",
"from_value_type": "originalfilename",
"from_value": ""
}
Rule if logic: | ||
"target_document_type": "product" | Le média doit être lié à un type de document produit. | |
"target_value_type": "eav" | La liaison doit être basée sur un attribut. | |
"target_value": "couleur" | Utilisez ce code d'attribut spécifique. | |
"rule": "equal" | Le nom du média doit être une correspondance exacte avec une valeur d'attribut. | |
"from_value_regex": "\/^([a-zA-Z0-9]*)\\.[jpg|png]\/" | Le nom du média doit être comme ceci :
|
|
Voici un examen plus approfondi de la déclaration Rule then :
{
"action": "createXObject",
"document_type": "article_images_media",
"side_entity": "target"
}
Rule then logic: | ||
"action": "createXObject" | Créer un objet de connexion. | |
"document_type": "article_images_media" | Utilisez le type de liaison article_images_media. | |
"side_entity": "target" | Utilisez la "target" (cible) dans la déclaration Rule if. |
Cas d'utilisation
1. Lier à plusieurs documents
Scenario | Response | ||||||||
Puis-je lier un média à plusieurs documents ? | Oui, si vous faites une liaison sur une valeur d'attribut. Le nom du média doit respecter votre convention de dénomination et inclure un segment qui correspond exactement à la valeur de l'attribut. Exemple Pour lier une vidéo à tous les documents qui ont l'attribut design avec une valeur "moderne". Le nom de la vidéo pourrait être "moderne_video.mp4" si votre convention de nommage est : value_xxxx.extension Dans ce cas, les parties suivantes de la déclaration Rule if seraient modifiées pour indiquer qu'une valeur d'attribut doit être utilisée :
|
2. Lier à un document et son variant
Scenario | Response |
---|---|
Puis-je lier un média à un document et à son variant ? | Oui. Dans ce cas, vous pouvez créer deux règles qui seront exécutées de manière séquentielle : S'il n'y a pas de document correspondant, la deuxième règle vérifie s'il existe ou non un variant. La convention de dénomination des médias pourrait être la suivante : document_code__variant_code__xxxx.extension |
2.a Utiliser une liaison spécifique
Scenario | Response |
---|---|
Puis-je lier un média à un document et à sa variant via un lien spécifique (par exemple, "texture") ? | Oui, vous pouvez spécifier la liaison dans la déclaration Rule then. En reprenant l'exemple précédent, la convention de dénomination du média pourrait être la suivante : document_code__variant_code__text1889_xxxx.extension Dans ce cas, la logique de la règle serait : document_code est trouvé,"document_type":"texture" ). |
3. Lier à plusieurs types de documents
Scenario | Response |
---|---|
Puis-je lier un média à plusieurs types de documents via une seule règle de liaison automatique ? | Non. Il n'est pas possible de déclarer plusieurs liaisons automatiques via la même règle. Si un média doit être lié à plusieurs types de documents, des règles individuelles doivent être créés pour chaque type de document. |
Updated 17 days ago