Angular momenta of photon $A^\mu$ can have multipole expansions in classical electrodynamics. This gives rise to dipole photon, quadrupole photon etc. For dipole photon $j=1$ (In electrodynamics books they write it as $l=1$). Since, $\vec J=\vec L+\vec S$ and $j=|l-s|$ to $|l+s|$, in steps of unity. 


*

*Can we apply this formula because I think S is not a good quantum number to specify photons but helicity is. If it propagates in z-direction then $S_z$ is good quantum number. Right? Then, can I directly use this formula or should I instead use $m_j=m_l+m_s$? Does it mean whenever I have gamma-transitions between two nuclear levels I should always use $m_j=m_l+m_s$ and not use $\vec J=\vec L+\vec S$ and $j=|l-s|$ to $|l+s|$?

*We know that, the projection $S_z=0$ is not allowed for a photon propagating along z-direction. But is it true that $L_z=0$ projection is also not allowed for photons?
 A: There is a confusion in this question between classical electrodynamics and quantum electrodynamics. The multipole expansions of the vector potential are classical.  A photon is a single elementary particle, and elementary particles are described with quantum mechanics.
Physics is continuous and quantum mechanical ensembles of photons do build up classical electromagnetic radiation which could have  multipole properties, but this cannot happen by mixing formalisms. Have a look at this exposition of how classical waves are built up by photons.
The photon has intrinsic spin 1 and is always + or -1,  as it is massless. It cannot be in a quantum mechanical orbital characterized by an angular momentum because it cannot be bound in a potential. It has no meaning to speak of its "angular momentum"  as an intrinsic property. 
Please look at this answer  here about what is called photon orbital angular momentum , which is a classical beam vortex about whose axis the photon can have an angular momentum.
