Lo recomendaría así.
Usted tiene (y debe) tener su propio punto con el cual verificar el origen de los datos y la intención del usuario. Si solo tiene un nonce para un metabox, entonces tiene problemas si ese metabox se elimina (no es lo mismo que oculto). Si se elimina, el segundo metabox nunca (o al menos debería) nunca se guardará ya que el nonce ya no se envía.
Por supuesto, desde un punto de vista de seguridad, no se agrega nada a un segundo tipo, a menos que desee actualizar solo un metabox y no el otro: los elementos deben ser exclusivos de la acción .
Editar
Como se señaló, solo hay un formulario para la pantalla de edición posterior. Entonces, en teoría, solo necesita un campo nonce con el que validar la acción y el origen de los datos. Sin embargo, dado que los metaboxes pueden eliminarse, al tener un campo nonce en un solo metabox no hay garantía de que el nonce esté allí. Al colocar un campo nonce en cada metabox, puede verificar si los datos de ese metabox se enviaron (y en realidad son de donde cree que están) antes de procesar los datos. E.g:
save_post_call_back($post_id){
//Check this is not an auto-save route
if(nonce of metabox1 present and valid){
//Process data from metabox1
}else{
//Either metabox removed - or invalid nonce. Take no action.
}
if(nonce of metabox2 present and valid){
//Process data from metabox2
}else{
//Either metabox removed - or invalid nonce. Take no action.
}
}
El nombre del campo nonce debe ser único para el metabox (y no debe coincidir con ningún otro elemento que esté presente en el formulario de otros complementos).
El valor nonce debería ser exclusivo de la acción (y esto generalmente debe incluir el origen de los datos (por ejemplo, editar-publicar en lugar de una edición rápida)). Por lo general, también incluyo la ID de la publicación.