Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/09/2011, 07:44
Avatar de TMeister
TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 22 años, 3 meses
Puntos: 193
Respuesta: Como Agregar 2 filtros Custom de tipo ComboBox en WP-Admin

umm veamos para los campos personalizados en el perfil y agregar las columnas al listado de usuarios puedes tomar como base lo siguiente:

Código PHP:
Ver original
  1. <?php
  2. add_action( 'show_user_profile',            'extra_custom_fields');
  3. add_action( 'edit_user_profile',            'extra_custom_fields');
  4. add_action( 'personal_options_update',      'save_extra_custom_fields');
  5. add_action( 'edit_user_profile_update',     'save_extra_custom_fields');
  6. add_filter( 'manage_users_columns',         'add_status_column');
  7. add_filter( 'manage_users_custom_column',   'manage_status_column',10,3 );
  8.  
  9. public function extra_custom_fields($user){
  10. ?>
  11.     <h3>Información del Departamento</h3>
  12.     <table class="form-table">
  13.         <tr>
  14.             <th><label for="tu_campo">Tu Campo</label></th>
  15.             <td>
  16.                 <input type="text" name="custom_id" id="custom_id" value="<?=esc_attr( get_the_author_meta( 'custom_id', $user->ID ) );?>" />
  17.             </td>
  18.         </tr>
  19.     </table>
  20. <?
  21. }
  22.  
  23. function save_extra_custom_fields( $user_id ){
  24.     update_user_meta( $user_id, 'custom_id', $_POST['custom_id'] );
  25. }
  26. function add_status_column($columns)
  27. {
  28.     $columns['custom_id'] = "El nombre en el header de la tabla";
  29.     return $columns;
  30. }
  31. function manage_status_column($value='', $column_name, $user_id)
  32. {
  33.     $user = get_userdata( $user_id );
  34.     switch ($column_name) {
  35.         case 'custom_id':
  36.             return $user->custom_id: '';
  37.             break;
  38.     }
  39.  
  40. }
  41. ?>

Con esto en el perfil de los usuarios pueden modificar los campos que se agregan. Para el filtrado depende de donde lo quieras hacer, pero para una búsqueda por meta fields puedes usar WP_User_Query

Saludos!!