2016-07-22 16 views
5

Ben enter image description hereÖzel posta türünde özel meta kutusunun WordPress Filtresi nasıl eklenir?

şimdiden teşekkürler resmin altındaki filtre bağlantı eklemek wann.

+0

bu bağlantıyı bakın misiniz? ne olacağı konusunda http://wordpress.stackexchange.com/questions/45436/add-filter-menu-to-admin-list-of-posts-of-custom-type-to-filter-posts-by-custo – purvik7373

+0

mağaza isminiz herhangi bir örneği listeler mi lütfen? –

+0

Mağazamın adı Like. 1) hearten cafe 2) hızlı parça 40 3) hızlı parça 51 Ve benzer şekilde –

cevap

1

onay bu

add_action('restrict_manage_posts', 'our_drink_filter'); 
/** 
* First create the dropdown 
* make sure to change POST_TYPE to the name of your custom post type 
* 
* @author Ohad Raz 
* 
* @return void 
*/ 
function our_drink_filter(){ 
    $type = 'post'; 
    if (isset($_GET['post_type'])) { 
     $type = $_GET['post_type']; 
    } 

    //only add filter to post type you want 
    if ('our_drink' == $type){ 
     //change this to the list of values you want to show 
     //in 'label' => 'value' format 
     $filter_post = array(); 
     $all_movies1 = get_posts(array(
      'post_type' => 'our_restaurant', 
      'numberposts' => -1, 
      'orderby' => 'post_title', 
      'order' => 'ASC' 
      )); 
      foreach ($all_movies1 as $movie1) : 
       //echo $movie1->post_title." ".sanitize_title($movie1->post_title)."<br>"; 
       array_push($filter_post[$movie1->post_title] = sanitize_title($movie1->post_title)); 

      endforeach; 
     ?> 
     <select name="ADMIN_FILTER_FIELD_VALUE"> 
     <option value=""><?php _e('Store Name ', 'wose45436'); ?></option> 
     <?php 
      $current_v = isset($_GET['ADMIN_FILTER_FIELD_VALUE'])? $_GET['ADMIN_FILTER_FIELD_VALUE']:''; 
      foreach ($filter_post as $label => $value) { 
       printf 
        (
         '<option value="%s"%s>%s</option>', 
         $value, 
         $value == $current_v? ' selected="selected"':'', 
         $label 
        ); 
       } 
     ?> 
     </select> 
     <?php 
    } 
} 


add_filter('parse_query', 'drink_posts_filter'); 
/** 
* if submitted filter by post meta 
* 
* make sure to change META_KEY to the actual meta key 
* and POST_TYPE to the name of your custom post type 
* @author Ohad Raz 
* @param (wp_query object) $query 
* 
* @return Void 
*/ 
function drink_posts_filter($query){ 
    global $pagenow; 
    $type = 'post'; 
    if (isset($_GET['post_type'])) { 
     $type = $_GET['post_type']; 
    } 
    if ('our_drink' == $type && is_admin() && $pagenow=='edit.php' && isset($_GET['ADMIN_FILTER_FIELD_VALUE']) && $_GET['ADMIN_FILTER_FIELD_VALUE'] != '') { 
     $query->query_vars['meta_key'] = 'custom_element_grid_class_meta_box'; 
     $query->query_vars['meta_value'] = $_GET['ADMIN_FILTER_FIELD_VALUE']; 
    } 
} 
+0

Teşekkür ederim birendra bu benim aradığım şey. –

-1

Bunun bir eklenti olduğu anlaşılıyor. Bunu yapmak için bu eklentinin kodunu değiştirmelisiniz. Bu eklentinin içeriğini bilmeden size söyleyemedim, o zaman bu eklenti için bir güncelleme yüklüyse o optonun kaybolmasıyla ilgili bir sorununuz olacaktır. Bu yüzden en iyi bahisten, eklentinin yazarı tarafından istenir.

+0

Hiçbir eklenti kullanmıyorum. Bu, mağaza adının özel meta alan olduğu özel posta türüm. Yönetici panelinde görüntülemek için yönetirim. Artık müşterilerim filtrelere ihtiyaç duyuyor. –

+0

Burada gördüğüm en iyi şey şudur: https://www.smashingmagazine.com/2013/12/modifying-admin-post-lists-in-wordpress/ – Danimal

İlgili konular