web-dev-qa-db-fra.com

Taxonomie Colonne personnalisée - Filtre 'manage_ {TAXONOMY} _custom_column' ne transmettant que 2 arguments

J'essaie d'ajouter une colonne personnalisée aux tableaux indiqués dans les pages d'administration Tags et catégories de Wordpress.

J'ai créé une fonction et l'ai ajoutée en tant que filtre à l'aide de

add_filter( 'manage_post_tag_custom_column' , 'my_custom_column' , 10 , 2 );

Ma fonction est

my_custom_column( $out , $name , $term_id ){
  switch( $name ){
    case 'my_column_slug' :
      echo '<pre>';var_dump( func_get_args() );echo '</pre>';
      break;
  }
}

Ma colonne est affichée dans la table, avec le contenu <pre>...</pre>, mais il semble qu'aucun $term_id ne soit transmis à ma fonction.

array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(12) "my_column_slug"
}

J'ai fait référence à un certain nombre de ressources pour confirmer que trois arguments devraient être passés à la fonction (y compris cet article de StackExchange ). Est-ce que j'ai râté quelque chose?

2
Luke Stevenson

Vous utilisez un nombre incorrect d'arguments dans add_filter , vous avez spécifié obtenir 2 arguments et vous recherchez le troisième:

Mettez à jour votre code add_filter à ceci:

add_filter( 'manage_post_tag_custom_column' , 'my_custom_column' , 10 , 3 );

Le 3 à la fin indique au filtre de fournir les trois arguments à votre fonction.

6
sven