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éfautSéparateur décimal WooCommerceSéparateur de milliers WooCommercewoo_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émentairesSmart Coupons valides pourwoocommerce_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éfautFormatage des articles de nouvelle commande
Client
woo_ce_customer_post_status: Remplacez le statut de publication du client par défaut passé àWP_QuerySurvol personnalisé du clientSurvol personnalisé de l'utilisateur
Ordre
woo_ce_order_post_status: Remplacez le statut de publication de la commande par défaut passé àWP_QueryAdd-ons de produitWCSLibellé GFSurvol GFAttributSurvol personnalisé de l'utilisateurwoo_ce_get_orders_args: Ajoutez vos propres filtresWP_Queryà l'export des commandesObtenir l'ID de commandeAdresse de facturationAdresse de livraisonArticles de commande combinésArticles de commande uniqueswoo_ce_order: Ajoutez la prise en charge de colonnes de commande supplémentairesID de méthode d'expédition associée à la commandeDate de la note associée à la commandeClient de la note associée à la commandeCommande de la note associée à la commandeActiver les add-ons Gravity FormsTaxonomie de variation des articles de commandeMéta personnalisé de l'article de commandeArticle de commandewoo_ce_order_item_types: Ajoutez vos propres types d'articles de commandeArticles de commande individuelsAjouter des champs d'article de commande uniques activésExclusion des champs d'article de commande uniques ajoutéswoo_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 |
Exporter WooCommerce XML après le jeu de données | Exporter Wholesale Suite XML après le jeu de données |
Exporter WooCommerce RSS première ligne | (pas d'équivalent Quick Export/Programmé) |
Exporter WooCommerce nœud de canal RSS | Exporter Wholesale Suite nœud de canal RSS |
Les filtres de nœuds suivants s'appliquent aux deux chemins de code :
Exporter WooCommerce nœud de produit XMLExporter WooCommerce nœud de catégorie XMLExporter WooCommerce nœud d'étiquette XMLExporter WooCommerce nœud de marque XMLExporter WooCommerce nœud de commande XMLExporter WooCommerce nœud de client XMLExporter WooCommerce nœud d'utilisateur XMLExporter WooCommerce nœud de coupon XMLExporter WooCommerce nœud d'abonnement XMLExporter WooCommerce nœud de fournisseur de produit XMLExporter WooCommerce nœud de commission XMLExporter WooCommerce nœud de classe d'expédition XML
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.

