Es difícil declarar las mejores prácticas aquí.
La ubicación depende del contenido del metabox: un campo de editor sería demasiado estrecho generalmente en la columna lateral; Por otro lado, dos casillas pequeñas se verán perdidas en la columna principal.
Para entender dónde se colocará el cuadro, usemos un pequeño complemento de demostración:
add_action( 'add_meta_boxes_post', 'register_demo_metaboxes' );
function register_demo_metaboxes()
{
$contexts = array ( 'normal', 'advanced', 'side' );
$priorities = array ( 'high', 'sorted', 'core', 'default', 'low' );
foreach ( $contexts as $context )
foreach ( $priorities as $priority )
add_meta_box(
"demo-$context-$priority", // id
"$context/$priority", // title
'demo_metabox_callback', // callback
NULL, // screen
$context,
$priority
);
}
function demo_metabox_callback( $object, $box )
{
static $count = 1;
print "number " . $count++;
}
side/high
y side/sorted
se colocará encima del cuadro Publicar , normal/high
inmediatamente después del editor, */low
al final de la pantalla y probablemente fuera de la vista.
Algunas reglas que trato de seguir:
- No mueva el cuadro Publicar . Es posible que los usuarios no descubran cómo mover el cuadro hacia abajo. Esto puede ser muy molesto.
- Trate de comprender con qué frecuencia se puede usar una caja. Una configuración que active o desactive solo una vez por publicación debe ser muy baja.
- Ordenar por importancia: las casillas con campos obligatorios (precio de un producto) deben ser muy prominentes, una descripción que se extraerá del contenido principal si está vacía, no tiene que estar visible todo el tiempo.
- Algunos usuarios se mueva el cuadro fuera de la vista, algunos podrían desactivar por completo. Prepare sus controladores de devolución de llamada para eso.
- Use
normal/default
o side/default
si no está seguro.