2017-02-09 69 views
1

我使用一个名为EventOn Tickets的Wordpress插件,它提供购票。 Woocommerce Addon Fields显示在常规产品上,但不显示在EventOn票据上。我正在寻找帮助,以便将Woocommerce Addon字段添加到Eventon Tickets结帐并实现功能。添加Woocommerce产品插件字段到EventOn门票

以下是仅显示数量为“添加到购物车”按钮的问题代码。使用标准的Woocommerce产品插件可以工作,但不允许我显示选项,因为我愿意并且喜欢Woocommerce产品插件的数据输入。

<p itemprop="price" class="price tx_price_line"><?php echo eventon_get_custom_language($opt, 'evoTX_002ff','Price').': '. $product->get_price_html(); ?></p> 
<form class='tx_orderonline_single' data-producttype='single' method="post" enctype='multipart/form-data'> 
<div class='tx_orderonline_add_cart'> 
<?php 
    // calculate correct max capacity 
    $max_quantity = ($capacity_of_this_repeat!='none') ? $capacity_of_this_repeat: 
     ($product->backorders_allowed() ? '' : $product->get_stock_quantity()); 
     if (! $product->is_sold_individually()) 
      woocommerce_quantity_input(array(
      'min_value' => apply_filters('woocommerce_quantity_input_min', 1, $product), 
       'max_value' => apply_filters('woocommerce_quantity_input_max', $max_quantity, $product) 
      ), $product); 
    ?> 
    <input type="hidden" name="add-to-cart" value="<?php echo esc_attr($product->id); ?>" /> 
    <button data-product_id='<?php echo $woo_product_id;?>' id='cart_btn' class="evoAddToCart evcal_btn single_add_to_cart_button button alt"><?php echo apply_filters('single_add_to_cart_text', eventon_get_custom_language($opt, 'evoTX_002','Add to Cart'), $product->product_type); ?></button> 
    <div class="clear"></div> 
</div> 
</form> 

回答

1

产品插件显示在woocommerce_before_add_to_cart_button钩(见Product_Addon_Display类的构造函数)。所以只要你有一个do_action('woocommerce_before_add_to_cart_button');动作钩,那么应该显示插件。

确保您的表单具有标准的WooCommerce挂钩将有助于它支持更多的WooCommerce扩展。

<p itemprop="price" class="price tx_price_line"><?php echo eventon_get_custom_language($opt, 'evoTX_002ff','Price').': '. $product->get_price_html(); ?></p> 

<?php do_action('woocommerce_before_add_to_cart_form'); ?> 

<form class='tx_orderonline_single' data-producttype='single' method="post" enctype='multipart/form-data'> 
<div class='tx_orderonline_add_cart'> 
<?php 
    // calculate correct max capacity 
    $max_quantity = ($capacity_of_this_repeat!='none') ? $capacity_of_this_repeat: 
     ($product->backorders_allowed() ? '' : $product->get_stock_quantity()); 
     if (! $product->is_sold_individually()) 
      woocommerce_quantity_input(array(
      'min_value' => apply_filters('woocommerce_quantity_input_min', 1, $product), 
       'max_value' => apply_filters('woocommerce_quantity_input_max', $max_quantity, $product) 
      ), $product); 
    ?> 
    <input type="hidden" name="add-to-cart" value="<?php echo esc_attr($product->id); ?>" /> 

    <?php do_action('woocommerce_before_add_to_cart_button'); ?> 
    <button data-product_id='<?php echo $woo_product_id;?>' id='cart_btn' class="evoAddToCart evcal_btn single_add_to_cart_button button alt"><?php echo apply_filters('single_add_to_cart_text', eventon_get_custom_language($opt, 'evoTX_002','Add to Cart'), $product->product_type); ?></button> 

    <?php do_action('woocommerce_after_add_to_cart_button'); ?> 
    <div class="clear"></div> 
</div> 
</form> 

<?php do_action('woocommerce_after_add_to_cart_form'); ?> 
+0

我非常感谢您的反馈。做研究是的,它看起来像woocommerce_before_add_to_cart_button应该添加在该功能。我使用你的代码,并且令人惊讶的是,页面上显示了完全相同的输出。我添加了一些额外的文本来确认它确实在使用该代码。我也将表单前的do_action更改为“woocommerce_before_add_to_cart_form”,但同样的事情发生,页面上的输出只是上下箭头的数量和“添加到购物车”按钮 – Nitrous

+0

对不起,我真的不能帮助更多因为我没有eventon插件,所以我会联系作者,并要求为产品插件添加支持。 – helgatheviking

相关问题