No, the Halbach array is not related to the monopole at all. It is just an special arrangement of magnet.
Any arrangement of a "dipole" magnet would not result in any monopole. It can be easily understood as follows: If each individual magnet contains no magnetic monopole, i.e., $\nabla\cdot\mathbf{B}_i=0$ true for whole space, then the resulting magnetic field is $\mathbf{B} = \mathbf{B}_1 + \mathbf{B}_2$ when you put them together. Hence the resulting divergence is also $\nabla\cdot\mathbf{B}=0$.
I don't understand what happens to the poles of magnets, or the direction of magnetic flux? Does it change its direction in each next or third element of array?
You should know that magnetic pole is not a very well defined concept as the "boundary" of the magnetic pole is not fixed. The flux line does change the direction across the boundary. But the most important things (in the first figure) is that the magnetic field line is continuous and closed, which means that there is no magnetic monopole.
All the field lines go out have to come back at the next nearest neighbor. The effect of Halbach array is simply to push the closed magnetic field line on one side, hence the resulting magnetic field was enhanced on one side.
The Diagram 2 looks like a monopole, because there is the same direction of flux all the time? Is it true, or am I misunderstanding something?
No, the flux direction is not in the same direction over the whole region, they are alternating instead. You can think of it by putting two array in diagram one (flipped one of them) together. Each of them forming a small field line loop. At the center of two up arrows ($\uparrow$) the magnetic field is pointing up. Also, at the center of two down arrows ($\downarrow$), the magnetic field line is pointing down. Hence, it is clear that the field line is alternating after each next nearest neighbor. The wiggler of the electron path is the result of the alternating magnetic field.
I think there is a problem for the Diagram 2, the oscillating frequency is double of what it is supposed to be. It should be the same as the period of the array.