2014-10-17 6 views
0

Мне нужно изменить раздел «категории товаров» справа, на бэкэнд, с выпадающим меню.woocommerce backend выпадающее меню категории

Кто-то знает, как я могу это сделать в woocommerce?

Спасибо

Gab

редактировать:

У меня есть категории структура, как это: courses (primary category) -french (sub-category) -english (sub-category) --ireland (sub-category) ---Cork (sub-category) ---- school (sub-category)

если возможно мне нужно фильтровать каждый подкатегорий после этого я выбранные категория выше в иерархии.

Это то, что я сделал изменить код

http://imageshack.com/a/img537/6404/iFstCU.png

http://imageshack.com/a/img674/8991/OL9BqP.png

+0

Я нашел это http://tinyurl.com/6xc72h, но я не знаю, полезен ли он для моих нужд. – GabrieleU

ответ

0

Вы можете попробовать этот код (вы можете поместить этот код в файл function.php вашей темы):

add_filter('woocommerce_taxonomy_args_product_cat', 'add_callback_for_product_cat'); 

function add_callback_for_product_cat($args) { 
    $args['meta_box_cb'] = 'replace_with_product_categories_dropdown'; 
    return $args; 
} 

function replace_with_product_categories_dropdown($post, $box) { 
    $defaults = array('taxonomy' => 'category'); 
    if (! isset($box['args']) || ! is_array($box['args'])) { 
     $args = array(); 
    } else { 
     $args = $box['args']; 
    } 
    $r = wp_parse_args($args, $defaults); 
    $tax_name = esc_attr($r['taxonomy']); 
    $taxonomy = get_taxonomy($r['taxonomy']); 
    ?> 
    <div id="taxonomy-<?php echo $tax_name; ?>" class="categorydiv"> 
     <ul id="<?php echo $tax_name; ?>-tabs" class="category-tabs"> 
      <li class="tabs"><a href="#<?php echo $tax_name; ?>-all"><?php echo $taxonomy->labels->all_items; ?></a></li> 
      <li class="hide-if-no-js"><a href="#<?php echo $tax_name; ?>-pop"><?php _e('Most Used'); ?></a></li> 
     </ul> 

     <div id="<?php echo $tax_name; ?>-pop" class="tabs-panel" style="display: none;"> 
      <ul id="<?php echo $tax_name; ?>checklist-pop" class="categorychecklist form-no-clear" > 
       <?php $popular_ids = wp_popular_terms_checklist($tax_name); ?> 
      </ul> 
     </div> 

     <div id="<?php echo $tax_name; ?>-all" class="tabs-panel"> 
      <?php 
      $name = ($tax_name == 'category') ? 'post_category' : 'tax_input[' . $tax_name . ']'; 
      echo "<input type='hidden' name='{$name}[]' value='0' />"; // Allows for an empty term set to be sent. 0 is an invalid Term ID and will be ignored by empty() checks. 
      $wp_dropdown_categories_args = array(
         'hierarchical'  => 1, 
         'name'    => 'product_cat_select', 
         'id'     => 'product_cat_select', 
         'class'    => 'postbox', 
         'taxonomy'   => 'product_cat' 
        ); 
      wp_dropdown_categories($wp_dropdown_categories_args); 
      ?> 
     </div> 
    <?php if (current_user_can($taxonomy->cap->edit_terms)) : ?> 
      <div id="<?php echo $tax_name; ?>-adder" class="wp-hidden-children"> 
       <h4> 
        <a id="<?php echo $tax_name; ?>-add-toggle" href="#<?php echo $tax_name; ?>-add" class="hide-if-no-js"> 
         <?php 
          /* translators: %s: add new taxonomy label */ 
          printf(__('+ %s'), $taxonomy->labels->add_new_item); 
         ?> 
        </a> 
       </h4> 
       <p id="<?php echo $tax_name; ?>-add" class="category-add wp-hidden-child"> 
        <label class="screen-reader-text" for="new<?php echo $tax_name; ?>"><?php echo $taxonomy->labels->add_new_item; ?></label> 
        <input type="text" name="new<?php echo $tax_name; ?>" id="new<?php echo $tax_name; ?>" class="form-required form-input-tip" value="<?php echo esc_attr($taxonomy->labels->new_item_name); ?>" aria-required="true"/> 
        <label class="screen-reader-text" for="new<?php echo $tax_name; ?>_parent"> 
         <?php echo $taxonomy->labels->parent_item_colon; ?> 
        </label> 
        <?php wp_dropdown_categories(array('taxonomy' => $tax_name, 'hide_empty' => 0, 'name' => 'new' . $tax_name . '_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => '&mdash; ' . $taxonomy->labels->parent_item . ' &mdash;')); ?> 
        <input type="button" id="<?php echo $tax_name; ?>-add-submit" data-wp-lists="add:<?php echo $tax_name; ?>checklist:<?php echo $tax_name; ?>-add" class="button category-add-submit" value="<?php echo esc_attr($taxonomy->labels->add_new_item); ?>" /> 
        <?php wp_nonce_field('add-' . $tax_name, '_ajax_nonce-add-' . $tax_name, false); ?> 
        <span id="<?php echo $tax_name; ?>-ajax-response"></span> 
       </p> 
      </div> 
     <?php endif; ?> 
    </div> 
    <?php 
} 

Надеюсь, это будет полезно.

+0

Спасибо за помощь, я попытался изменить код для своих нужд. Вы можете проверить выше? – GabrieleU

Смежные вопросы