hola, no tienes que hacer una pagina distinta para cada categoria, todo lo puedes hacer en un mismo archivo y espesificar en la clausula WHERE de la consulta cual es la categoria que quieres mostrar:
Código PHP:
$sql = "SELECT * FROM tabla WHERE categoaria = ". $_GET['categoria'] .""
y por su puesto, el ID de cada categoria se lo mandas por la url
saludos y suerte