[wp-hackers] Custom Post Type in Admin, filter by new custom Taxonomies

Mike Schinkel mikeschinkel at newclarity.net
Fri Jul 23 11:04:54 UTC 2010


Jimmy,

I just noticed, '[classement_fr] => 6' is not in your array.

First try to use either "classement_fr" everywhere or "classement-fr" and see if that fixes it.

-Mike

On Jul 23, 2010, at 6:32 AM, Jimmy Roy wrote:

> Array ( [order] => asc [orderby] => menu_order title [post_type] =>
> ressource_fr [posts_per_page] => -1 [posts_per_archive_page] => -1 )
> 
> url after clicking "filter" button :
> 
> http://localhost:8888/wp3.0/profperso/wp-admin/edit.php?s&post_status=all&post_type=ressource_fr&mode=list&action=-1&m=0&classement_fr=6&action2=-1
> 
> 
> 2010/7/23 Mike Schinkel <mikeschinkel at newclarity.net>
> 
>> What do you get in the view source when you using this instead:
>> 
>> function request($request) {
>>       print_r($request);
>>       exit;
>> }
>> 
>> Also, what's your URL after clicking the "Filter" button?
>> 
>> -Mike
>> 
>> 
>> On Jul 23, 2010, at 6:02 AM, Jimmy Roy wrote:
>> 
>>> now, when I click on filter button the result is always the same, all
>> list
>>> of ressources.
>>> 
>>> my code :
>>> 
>>> add_action( 'init', 'register_profperso_taxonomies', 0 );
>>> 
>>> function register_profperso_taxonomies() {
>>> 
>>> register_taxonomy(
>>> 'classement_fr',
>>> array( 'ressource_fr' ),
>>> array(
>>> 'public' => true,
>>> 'hierarchical' => true,
>>> 'labels' => array(
>>> 'name' => __( 'Classements FR' ),
>>> 'singular_name' => __( 'Classement FR' )
>>> ),
>>> 'query_var' => 'classement-fr',
>>>       'rewrite' => array( 'slug' => 'cours-fr' ),
>>> )
>>> );
>>> }
>>> 
>>> 
>>> // pour filtrer les ressources par classement
>>> add_action( 'restrict_manage_posts','my_restrict_manage_posts' );
>>> 
>>> function my_restrict_manage_posts() {
>>> global $typenow;
>>> if ($typenow=='ressource_fr')
>>> wp_dropdown_categories( 'show_option_all=Afficher
>>> 
>> tout&show_count=1&hierarchical=1&taxonomy=classement_fr&name=classement_fr');
>>> }
>>> 
>>> add_action( 'request', 'my_request' );
>>> function my_request($request) {
>>>      if (isset($request['post_type']) &&
>>> $request['post_type']=='ressource_fr') {
>>>              $request['taxonomy'] = 'classement_fr';
>>>              $request['term'] =
>>> get_term($request['classement-fr'],'classement_fr')->name;
>>>              unset($request['name']);
>>>      }
>>>      return $request;
>>> }
>>> 
>>> generated html :
>>> <select id="classement_fr" name="classement_fr"> <option value="0">Show
>> All
>>> Classements FR</option> <option value="5">Langue oral</option> <option
>> value
>>> ="6">Niveau 1</option> <option value="7">Niveau 2</option> <option
>> value="8
>>> ">Niveau 3</option> </select><input type="submit" id="post-query-submit"
>>> value="Filtrer" class="button-secondary" />
>>> _______________________________________________
>>> wp-hackers mailing list
>>> wp-hackers at lists.automattic.com
>>> http://lists.automattic.com/mailman/listinfo/wp-hackers
>> 
>> _______________________________________________
>> wp-hackers mailing list
>> wp-hackers at lists.automattic.com
>> http://lists.automattic.com/mailman/listinfo/wp-hackers
>> 
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers



More information about the wp-hackers mailing list