WooCommerce er en populær e-handelsplatform bygget på WordPress-cms’et, og det giver mulighed for at oprette og håndtere forskellige produkttyper. For at få det mest ud af WooCommerce er det ofte nødvendigt at kunne oprette en brugerdefineret produkttype. Dette kan gøres med PHP, og her er et par eksempler på, hvordan dette kan gøres.
Brug af WooCommerce-filtre
Filtre kan bruges til at ændre WooCommerce-produkttyper. Filteret woocommerce_product_types
kan anvendes til at tilføje en brugerdefineret produkttype til WooCommerce. Det fungerer ved at tilføje et nyt element til den eksisterende array af produkttyper.
add_filter( 'woocommerce_product_types', 'add_custom_product_type' ); function add_custom_product_type( $product_types ) { $product_types['custom_product'] = array( 'label' => __( 'Custom Product', 'woocommerce' ), 'public' => true, 'show_in_admin_product_list' => true, 'show_in_admin_order_list' => true, 'file' => 'includes/class-wc-product-custom-product.php', ); return $product_types; }
I eksemplet ovenfor oprettes en ny produkttype kaldet “Custom Product” og tilføjes til den eksisterende array. Denne produkttype vil nu være tilgængelig for kunderne, når de bestiller produkter fra din webshop.
Brug af WooCommerce-hooks
Hooks kan bruges til at tilføje yderligere funktionalitet til WooCommerce-produkttyper. For at tilføje yderligere felt til et produkt skal du bruge hook’en woocommerce_product_options_general_product_data
. Dette hook vil give dig mulighed for at tilføje et ekstra felt til alle produkttyper. Eksemplet herunder viser, hvordan du kan bruge dette hook til at tilføje et felt til en brugerdefineret produkttype.
add_action( 'woocommerce_product_options_general_product_data', 'add_custom_field_to_product' ); function add_custom_field_to_product(){ global $post; if( 'custom_product' === $post->post_type ) { ?><?php } }
I eksemplet ovenfor oprettes et felt kaldet “Custom Field”, som kun vil blive vist, når et produkt af typen “Custom Product” er valgt. Feltet kan nu bruges til at tilføje ekstra information til produktet.
Brug af WooCommerce-handlinger
Handlinger bruges til at opdatere WooCommerce-produkttyper. Handlingen save_post
kan bruges til at gemme information om et produkt, når det gemmes. Dette er nyttigt, når du har tilføjet et ekstra felt til et produkt. Eksemplet herunder viser, hvordan handlingshook’en kan bruges til at gemme værdien af det tilføjede felt.
add_action( 'save_post', 'save_custom_field_data' ); function save_custom_field_data( $post_id ) { if( 'custom_product' === get_post_type( $post_id ) ) { update_post_meta( $post_id, '_custom_field', $_POST['_custom_field'] ); } }
I eksemplet ovenfor gemmes værdien af feltet “Custom Field” når produktet gemmes. Dette vil sikre, at informationen altid er tilgængelig, når produktet vises på din webshop.
Brug af WooCommerce-shortcodes
Shortcodes kan bruges til at vise WooCommerce-produkter på din webside. Shortcoden [product]
kan bruges til at vise et specifikt produkt. Dette kan bruges til at vise en brugerdefineret produkttype på din webside. Eksemplet herunder viser, hvordan du kan bruge shortcoden til at vise en brugerdefineret produkttype:
[product id="123" type="custom_product"]
I eksemplet ovenfor vises produktet med ID 123 af typen “Custom Product” på din webside. Dette er en god måde at vise et specifikt produkt på din webside, uden at skulle skrive kode.
Konklusion
Som du kan se, kan PHP bruges til at oprette og håndtere forskellige produkttyper i WooCommerce. Filtre, hooks, handlinger og shortcodes kan alle bruges til at tilføje yderligere funktionalitet til WooCommerce-produkttyper. Ved at bruge disse funktioner kan du oprette brugerdefinerede produkttyper, der tilgodeser dine kunders behov.