Usar gancho woot_profile_extend para ello.
Para esto en el archivo functions.php agregue el siguiente código:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | add_action('woot_profile_extend', function($profile, $action_name) { if ($action_name === 'woot_woocommerce_tables') { $profile['my_new_column'] = [ 'title' => WOOT_Vocabulary::get('My new column'), 'order' => FALSE, 'action' => function($post_id) { return 'Hello World!'; } ]; } return $profile; }, 10, 2); |
Con $ post_id puede crear cualquier dato y devolverlo directamente a la celda.
Repasemos más complicado ejemplo demostrado aquí. Preste atención al botón "Pregúnteme", haga clic en él. Como puede ver, este es un formulario de contacto donde el cliente puede escribir un mensaje al gerente de la tienda sobre el producto. Para crearlo:
- crear una nueva página y seleccionar la plantilla como "WOOT Página en blanco"
- instalar cualquier complemento de formulario de contacto, por ejemplo wpform
- lugar al contenido de la nueva página código abreviado del formulario de contacto, por ejemplowpforms id = "641"]
- agregue el siguiente código al archivo functions.php del tema actual de WordPress:1234567891011121314151617181920add_action('woot_profile_extend', function($profile, $action_name) {if ($action_name === 'woot_woocommerce_tables') {$profile['ask_me'] = ['title' => 'Ask Me','order' => FALSE,'action' => function($post_id) {return WOOT_HELPER::draw_html_item('a', ['href' => 'javascript: new Popup23({iframe:"https://demo.products-tables.com/wpform-contact-ask-me/?product_id=' . $post_id . '", '. 'allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture", '. 'title:"Ask manager about the product"});void(0);','class' => 'woot-btn'], 'Ask Me');}];}return $profile;}, 10, 2);
Presta atención al enlace "https://demo.products-tables.com/wpform-contact-ask-me"y cámbielo por el suyo. - Para completar algunas entradas del formulario de contacto aplique el siguiente código:12345678910111213141516add_filter('wp_footer', function() {if (is_page(642)) {if (isset($_GET['product_id'])) {$product = WOOT_WooCommerce::get_product(intval($_GET['product_id']));if (is_object($product)) {?><script>document.getElementById('wpforms-641-field_4').value = '<?php echo addslashes($product->get_title()) ?>';document.getElementById('wpforms-641-field_2').value = "Hello, give me please more information about the product: <?php echo addslashes($product->get_title()) ?>!";</script><?php}}}});
642 - ID de la página donde se colocó el formulario de contacto;
wpforms-641-field_4 - ID de la entrada
