Store Exporter Deluxe déclenche un grand nombre de crochets d'action et de filtre WordPress tout au long de son processus d'exportation. Utilisez-les pour ajouter vos propres champs aux formulaires d'exportation, modifier les données exportées, ou intégrer un tout nouveau type d'exportation sans modifier directement les fichiers du plugin.
Depuis Store Exporter Deluxe v5.4.3, les écrans d'administration du plugin (Vue d'ensemble, Export rapide, Exportations planifiées, Paramètres, etc.) sont rendus par une application monopage Vue sous WooCommerce → Exportation du magasin. La plupart des crochets ci-dessous sont toujours déclenchés par les mêmes fonctions PHP sous-jacentes qu'auparavant, ils fonctionnent donc de la même manière, quel que soit l'écran d'administration qui les déclenche. Quelques crochets liés à l'ancien formulaire d'exportation et à l'écran des paramètres ne sont plus déclenchés du tout : consultez l'appel sous Actions ci-dessous pour savoir lesquels. Les titres de section regroupent les crochets par ce qu'ils affectent, et non par un nom d'onglet spécifique à l'écran.
Comment les crochets s'intègrent dans le pipeline d'exportation
Chaque exportation, qu'elle soit déclenchée depuis l'Exportation rapide, une Exportation planifiée, ou un CRON manuel, passe par les trois mêmes étapes :
- Préparer : l'exportateur ouvre le fichier de sortie et écrit les en-têtes de colonne. Pour les exportations XML et RSS, des filtres tels que
wsed_export_xml_first_lineetwsed_export_xml_store_nodecontrôlent les balises d'ouverture et le nom du nœud racine avant que les lignes ne soient ajoutées. - Traiter : l'exportateur récupère les enregistrements par lots (100 enregistrements à la fois par défaut, configurable via le paramètre de taille de lot ; les exportations planifiées ne s'exécutent pas par lots) et écrit chaque ligne. Les filtres nommés
*_item(commewoo_ce_product_itemouwoo_ce_order_item) s'exécutent ici, une fois par enregistrement, vous permettant de modifier ou d'ajouter des données à cette ligne. - Finaliser : l'exportateur clôt le fichier, par exemple en fermant le jeu de données XML avec
wsed_export_xml_after_dataset, puis le transmet pour téléchargement, e-mail ou archivage.
Gardez cela à l'esprit lorsque vous choisissez un crochet : un filtre _item modifie un enregistrement à la fois pendant le traitement, tandis qu'une action _options (déclenchée pendant le formulaire d'administration, avant même que la préparation ne commence) n'affecte que le formulaire d'exportation que vous voyez, pas les données elles-mêmes.
Actions
Les actions sont des crochets que WordPress exécute à des points spécifiques pendant l'exécution, ou lorsque des événements spécifiques se produisent.
Écran de modification de l'exportation planifiée
Ceux-ci sont déclenchés sur l'écran de modification de l'exportation planifiée, où chaque exportation planifiée est stockée et gérée comme son propre article.
woo_ce_before_scheduled_export_general_options: Ajouter des champs à l'onglet Généralwoo_ce_before_scheduled_export_type_options: Ajouter des champs à l'onglet Typewoo_ce_before_scheduled_export_method_options: Ajouter des champs à l'onglet Méthodewoo_ce_before_scheduled_export_frequency_options: Ajouter des champs à l'onglet Fréquence
Filtres
Les filtres sont des hooks qui modifient les données avant qu'elles ne soient utilisées, que ce soit avant leur ajout à la base de données ou avant leur écriture dans le fichier d'exportation.
Générique
woo_ce_export_types: Ajouter vos propres types d'exportationwoo_ce_sys_get_temp_dir: Substituer le répertoire temporaire PHP par défaut pour les chemins personnaliséswoo_ce_template_header: Substituer le titre d'en-tête par défaut de Store Exporter Deluxewoo_ce_admin_order_actions: Ajouter vos propres boutons à la colonne Actions de l'écran Commandeswoo_ce_display_admin_footer_text: Modifier le message du pied de page de l'administration WordPresswoo_ce_modules_addons: Ajouter vos propres plugins au widget Modules d'exportationwoo_ce_get_visitor_ip_address: Substituer l'adresse IP détectée de CRONwoo_ce_get_line_ending: Substituer le caractère de fin de ligne par défautwoo_ce_wc_price_decimal_sepwoo_ce_wc_price_thousands_sepwoo_ce_get_export_type_count: Substituer les décomptes de types d'exportationwoo_ce_scheduled_export_data_tabs: Ajoutez vos propres onglets à l'écran de modification de l'exportation planifiéewoo_ce_admin_user_capability: Remplacez la capacité utilisateur par défaut requise pour voir l'écran WooCommerce > Store Exportwoo_ce_admin_dashboard_user_capability: Remplacez la capacité utilisateur par défaut requise pour afficher les widgets du tableau de bord Exportations planifiées et Exportations planifiées récentes
Marque
woo_ce_brand_term_taxonomy: Remplacez la taxonomie de termeproduct_brandpar défautwoo_ce_get_product_brands_args: Ajoutez vos propres filtresWP_Queryà l'exportation des marques
Catégorie
woo_ce_category_item: Ajoutez la prise en charge de colonnes de catégories supplémentaireswoo_ce_get_product_categories_args: Ajoutez vos propres filtresWP_Queryà l'exportation des catégories
Coupon
woo_ce_get_coupons_args: Ajoutez vos propres filtresWP_Queryà l'exportation des couponswoo_ce_coupon_item: Ajoutez la prise en charge de colonnes de coupons supplémentaireswoo_ce_coupon_smart_coupons_valid_forwoocommerce_coupon_discount_types: Ajoutez vos propres types de réduction de coupon
Commission
woo_ce_get_commissions_args: Ajoutez vos propres filtresWP_Queryà l'exportation des commissions
CRON
woo_ce_cron_export_post_args: Remplacez les options HTTP POSTwoo_ce_email_recipient_name: Remplacez le nom du destinataire de l'e-mail par défautwoo_ce_email_contents: Remplacez le message de contenu de l'e-mail par défautwoo_ce_cron_export_ftp_switch: Basculez entre les méthodes FTPftp_putetftp_fputwoo_ce_default_email_subject: Remplacez l'objet de l'e-mail par défautwoo_ce_trigger_new_order_items_formatting
Client
woo_ce_customer_post_status: Remplacez le statut de publication du client par défaut passé àWP_Querywoo_ce_extend_customer_fields_custom_customer_hoverwoo_ce_extend_customer_fields_custom_user_hover
Ordre
woo_ce_order_post_status: Remplacez le statut de publication de la commande par défaut passé àWP_Querywoo_ce_extend_order_fields_product_addonswoo_ce_extend_order_fields_wccswoo_ce_extend_order_fields_gf_labelwoo_ce_extend_order_fields_gf_hoverwoo_ce_extend_order_fields_attributewoo_ce_extend_order_fields_custom_user_hoverwoo_ce_get_orders_args: Ajoutez vos propres filtresWP_Queryà l'export des commandeswoo_ce_get_order_idwoo_ce_get_order_data_billing_addresswoo_ce_get_order_data_shipping_addresswoo_ce_order_items_combinedwoo_ce_order_items_uniquewoo_ce_order: Ajoutez la prise en charge de colonnes de commande supplémentaireswoo_ce_get_order_assoc_shipping_method_idwoo_ce_get_order_assoc_notes_datewoo_ce_get_order_assoc_notes_customerwoo_ce_get_order_assoc_notes_orderwoo_ce_enable_addon_gravity_formswoo_ce_get_order_items_variation_taxonomywoo_ce_order_item_custom_metawoo_ce_order_itemwoo_ce_order_item_types: Ajoutez vos propres types d'articles de commandewoo_ce_order_items_individualwoo_ce_add_unique_order_item_fields_onwoo_ce_add_unique_order_item_fields_exclusionwoo_ce_unique_order_item_column_idwoo_ce_unique_order_item_column_product_idwoo_ce_unique_order_item_columnswoo_ce_extend_order_items_unique_columns_gf_fieldswoo_ce_get_order_shipping_methods
Produit
woo_ce_get_export_type_product_count_post_typeswoo_ce_extend_product_fields_custom_attribute_hoverwoo_ce_extend_product_fields_custom_product_hoverwoo_ce_get_products_post_typewoo_ce_get_products_statuswoo_ce_get_products_args: Ajoutez vos propres filtresWP_Queryà l'exportation des produitswoo_ce_product_item: Ajoutez la prise en charge de colonnes de produits supplémentaireswoo_ce_get_product_assoc_categories_sizewoo_ce_format_product_typeswoo_ce_unique_product_gallery_columnwoo_ce_format_description_excerpt_allowed_htmlwoo_ce_format_description_excerpt_allowed_protocolswoo_ce_format_description_excerpt
Vendeur de produit
woo_ce_get_product_vendors_args: Ajoutez vos propres filtresWP_Queryà l'exportation des vendeurs de produitswoo_ce_product_vendor: Ajoutez la prise en charge de colonnes de vendeurs de produits supplémentaireswoo_ce_product_vendor_term_taxonomy: Remplacez la taxonomie de terme par défautwcpv_product_vendors
Classe d'expédition
woo_ce_get_shipping_clases_args: Ajoutez vos propres filtresWP_Queryà l'exportation des classes de livraison
Abonnement
woo_ce_get_subscriptions_args: Ajoutez vos propres filtresWP_Queryà l'exportation des abonnementswoo_ce_subscription: Ajoutez la prise en charge de colonnes d'abonnement supplémentaireswoo_ce_subscription_statuseswoo_ce_extend_subscription_fields_wcwoo_ce_extend_subscription_fields_custom_user_hover
Étiquette
woo_ce_get_product_tags_args: Ajoutez vos propres filtresWP_Queryà l'exportation des étiquettes
Utilisateur
woo_ce_extend_user_fields_wcwoo_ce_extend_user_fields_custom_user_hoverwoo_ce_get_users_args: Ajoutez vos propres filtresWP_Queryà l'exportation des utilisateurswoo_ce_get_user_data_full_namewoo_ce_user: Ajoutez la prise en charge de colonnes d'utilisateurs supplémentaires
XML et RSS
| Exportation CRON manuelle (héritée) | Exportation rapide et exportations planifiées |
|---|---|
woo_ce_export_xml_first_line | wsed_export_xml_first_line |
woo_ce_export_xml_store_node | wsed_export_xml_store_node |
woo_ce_export_xml_before_dataset | wsed_export_xml_before_dataset |
woo_ce_export_xml_after_dataset | wsed_export_xml_after_dataset |
woo_ce_export_rss_first_line | (pas d'équivalent Quick Export/Programmé) |
woo_ce_export_rss_channel_node | wsed_export_rss_channel_node |
Les filtres de nœuds suivants s'appliquent aux deux chemins de code :
woo_ce_export_xml_product_nodewoo_ce_export_xml_category_nodewoo_ce_export_xml_tag_nodewoo_ce_export_xml_brand_nodewoo_ce_export_xml_order_nodewoo_ce_export_xml_customer_nodewoo_ce_export_xml_user_nodewoo_ce_export_xml_coupon_nodewoo_ce_export_xml_subscription_nodewoo_ce_export_xml_product_vendor_nodewoo_ce_export_xml_commission_nodewoo_ce_export_xml_shipping_class_node
Exemples de personnalisation courants
Ces exemples montrent des signatures réelles vérifiées par rapport au code actuel du plugin. Ajoutez-les à un plugin personnalisé ou au fichier functions.php de votre thème.
Ajouter une colonne personnalisée à l'exportation des produits
woo_ce_product_item s'exécute une fois par produit pendant l'étape de traitement. Il reçoit le tableau de données de la ligne, l'ID du produit et l'objet WC_Product :
add_filter( 'woo_ce_product_item', 'my_custom_product_column', 10, 3 );
function my_custom_product_column( $product, $product_id, $wc_product ) {
$product['my_custom_field'] = get_post_meta( $product_id, '_my_custom_field', true );
return $product;
}
Ajoutez l'ID de colonne correspondant à la liste des champs de votre exportation dans la section Champs d'exportation afin que la nouvelle valeur apparaisse réellement dans la sortie.
Ajouter un onglet personnalisé à l'écran de modification de l'exportation planifiée
woo_ce_scheduled_export_data_tabs reçoit le tableau des onglets affichés sur l'écran de modification de l'exportation planifiée, chacun indexé par un ID d'onglet avec une étiquette, un ID d'élément cible et une classe CSS :
add_filter( 'woo_ce_scheduled_export_data_tabs', 'my_custom_scheduled_export_tab' );
function my_custom_scheduled_export_tab( $tabs ) {
$tabs['my_tab'] = array(
'label' => __( 'My Tab', 'my-textdomain' ),
'target' => 'my_tab_panel',
'class' => '',
);
return $tabs;
}
FAQ
functions.php de votre thème actif si vous n'utilisez pas une configuration de thème enfant. Ne modifiez pas directement les fichiers de Store Exporter Deluxe. Toute modification apportée sera perdue lors de la prochaine mise à jour du plugin.Besoin d'aide supplémentaire ?
Si vous utilisez Store Exporter Deluxe et avez besoin d'aide pour une personnalisation spécifique, ouvrez un ticket de support et notre équipe pourra vous indiquer le bon hook pour votre cas d'utilisation.
Si vous utilisez le plugin gratuit Store Exporter, posez votre question sur le forum de support de WordPress.org.

