コード例 #1
0
ファイル: functions.php プロジェクト: samiksha369/majorcraft
/**
 * form shortcode of variation fields for product
 * 
 * Note : those will be different for rods and lures so we create an overwrite ot the template 
 */
function pierry_show_variation_attributes()
{
    global $post;
    $_pf = new WC_Product_Factory();
    $product = $_pf->get_product($post->ID);
    $field_desc = pierry_variation_fields_get_available_fields();
    $fields = pierry_variation_fields_get($post->ID);
    $attributes = $attributes = $product->get_attributes();
    $categories = majorcraft_get_all_categories($post->ID);
    //if(in_array('lures', $categories))  {
    $variation_attributes = array('columns' => 2, 'fields' => array('is_in_stock' => 'Status'));
    foreach ($attributes as $attribute) {
        if ($attribute['is_visible']) {
            $variation_attributes['fields']['attribute_' . $attribute['name']] = wc_attribute_label($attribute['name']);
        }
    }
    foreach ($fields as $slug => $f) {
        $intersection = array_intersect(array_keys($categories), array_values($field_desc[$slug]->cats));
        if (!empty($intersection)) {
            $variation_attributes['fields'][$slug] = $field_desc[$slug]->name;
        }
    }
    /*}
    	else if(in_array('rods', $categories)) {
    		
    	}*/
    $i = 0;
    $shortcode = '[pierry_variation_attrbutes columns="' . $variation_attributes['columns'] . '"';
    if (!empty($variation_attributes['fields']) && is_array($variation_attributes['fields'])) {
        $shortcode .= ' fields="';
        foreach ($variation_attributes['fields'] as $slug => $name) {
            if ($i > 0) {
                $shortcode .= ';';
            }
            $shortcode .= $slug . '=>' . $name . ":";
            $i++;
        }
    }
    $shortcode .= '"]';
    echo do_shortcode($shortcode);
}
コード例 #2
0
function majorcraft_rods_variation_table()
{
    global $post;
    global $product;
    $categories = majorcraft_get_all_categories($post->ID);
    if (in_array('rods', array_values($categories))) {
        if (is_product() and $product->product_type == 'variable') {
            wc_get_template('/single-product/rods_variations_table.php', array('categories' => $categories));
        }
    }
}