There are limitations on combined draw calls. The combined triangles must:
be in the same format
use the same shader
use the same GL state.
If you cannot join triangles because they use different shaders, consider if the effect generated by the shader makes a significant difference. If the difference is small, it might be worth removing the effect.