it-swarm-es.com

¿Crear una tabla en el estilo de administrador?

¿Cuál es la forma recomendada de crear una página con una tabla, al estilo de las tablas que muestran publicaciones o usuarios en el área de administración?

Estoy expandiendo el complemento Imágenes de caché , y contiene una tabla con dominios y varias imágenes de ese dominio. Así que no hay una tabla equivalente existente en la que pueda basarme (en la primera versión de esta pregunta, pregunté por una tabla con publicaciones, pero allí podría (quizás) expandir la tabla de publicaciones existente ).

¿Debería basarme en la página de resumen de la publicación , y comenzar con un <table class="widefat">, o hay mejores funciones que manejan esto ahora? ¿Conoces un ejemplo limpio y vacío de una tabla con paginación en la que pueda basar mi trabajo?

42
Jan Fabry

Esto es lo que generalmente uso:

<table class="widefat fixed" cellspacing="0">
    <thead>
    <tr>

            <th id="cb" class="manage-column column-cb check-column" scope="col"></th> // this column contains checkboxes
            <th id="columnname" class="manage-column column-columnname" scope="col"></th>
            <th id="columnname" class="manage-column column-columnname num" scope="col"></th> // "num" added because the column contains numbers

    </tr>
    </thead>

    <tfoot>
    <tr>

            <th class="manage-column column-cb check-column" scope="col"></th>
            <th class="manage-column column-columnname" scope="col"></th>
            <th class="manage-column column-columnname num" scope="col"></th>

    </tr>
    </tfoot>

    <tbody>
        <tr class="alternate">
            <th class="check-column" scope="row"></th>
            <td class="column-columnname"></td>
            <td class="column-columnname"></td>
        </tr>
        <tr>
            <th class="check-column" scope="row"></th>
            <td class="column-columnname"></td>
            <td class="column-columnname"></td>
        </tr>
        <tr class="alternate" valign="top"> // this row contains actions
            <th class="check-column" scope="row"></th>
            <td class="column-columnname">
                <div class="row-actions">
                    <span><a href="#">Action</a> |</span>
                    <span><a href="#">Action</a></span>
                </div>
            </td>
            <td class="column-columnname"></td>
        </tr>
        <tr valign="top"> // this row contains actions
            <th class="check-column" scope="row"></th>
            <td class="column-columnname">
                <div class="row-actions">
                    <span><a href="#">Action</a> |</span>
                    <span><a href="#">Action</a></span>
                </div>
            </td>
            <td class="column-columnname"></td>
        </tr>
    </tbody>
</table>

Espero que ayude.

28
sorich87

Usa la API Core, no solo su CSS

Normalmente solo usas una instancia de la clase WP_List_Table.

Guías:

Beneficios?

¡SÍ!

Puede agregar paginación, cuadros de búsqueda, acciones y cualquier magia que pueda imaginar (y que pueda codificar).

26
kaiser

Use este ejemplo (escrito como un complemento) para crear sus tablas de administración:

http://wordpress.org/extend/plugins/custom-list-table-example/

Utiliza la función incorporada WP_List_Table class.

13
Sander

También puede usar este pequeño complemento para ver las posibilidades del backend en WP: https://github.com/bueltge/WordPress-Admin-Style

4
bueltge

¿Podría considerar agregar un filtro a su lista de tipos de publicación personalizada en el administrador? La respuesta vinculada a continuación muestra cómo hacerlo con una taxonomía, pero podría usar fácilmente otros criterios en su gancho restrict_manage_posts:

Déjame saber si tienes más preguntas.

0
MikeSchinkel