Bueno, creo que tu pregunta es mas De diseño de DB no de php, pero igual según lo que entendi aqui va mi propuesta.
- Crea una tabla de bloques, esta tabla debera tener 3 registros correspondientes a los bloques A,B,C
- EN LA TABLA DE CATEGORIAS, AGREGA UN CAMPO QUE SE LLAME BLOQUE, DE ESE MODO TU PUEDES ASIGNAR LA CATEGORIA DEPORTES AL BLOQUE A Y LA CATEGORIA INFORMATICA AL BLOQUE B, POR EJEMPLO, OBVIO TIENES QUE TENER UN MODULO PARA ADMINISTRAR LAS CATEGORIAS
- EN LA TABLA NOTICIAS, DEBE HABER UN CAMPO QUE HAGA REFERENCIA A LA CATEGORIA, POR LO TANTO AL INSERTAR UNA NOTICIA EN DE LA CATEGORIA DEPORTES, EL SISTEMA AUTOMATICAMENTE SABE QUE TIENE QUE DESPLEGAR LA NOTICIA EN EL BLOQUE A
- POR LO TANTO CADA VEZ, QUE SE DE CLICK PARA VER LA NOTICIA COMPLETA, AL DOCUMENTO PHP QUE LA MOSTRARA LE MANDAS POR PARAMETROS EL ID DE LA NOTICIA Y EL ID DE LA CATEGORIA RESPECTIVA
De este modo puedes crear tantos bloques desees, y categorias dentro de ellos y noticias dentro de estas, y a nivel de programacion no tienes que cambiar casi nada, solo la parte donde dibujas los bloques y a nivel de pantallas de administrador absolutamente nada tienes que hacer, y de este modo los periodistas pueden agregar las noticias que quierean y en el orden que quieran