penso che il problema stia qui,
dove selezioni sempre la prima "riga" che viene restituita dalla query, mai le successive,
quindi potrà cancellare solo quell'elemento (che potrà anche essere casuale)
a mio parere devi rivedere la logica
PHP:
$query = "SELECT * FROM post WHERE titoloBlog = '$blog'";
$result = mysqli_query($mysqli, $query);
$row = mysqli_fetch_assoc($result);
$titoloblog = $row["titoloBlog"];
$titolopost = $row["titoloPost"];
$testopost = $row["testo"];
$datapost = $row["data"];
$orapost = $row["ora"];
.....
$query = "DELETE FROM post WHERE IDpost = '$idPost' AND titoloPost = '$titolopost' AND testo = '$testopost' AND data = '$datapost' AND ora = '$orapost'";
quindi potrà cancellare solo quell'elemento (che potrà anche essere casuale)
a mio parere devi rivedere la logica