You need to create a variable in your shader that holds this object location. In GLSL, you'd create a uniform variable; this is a variable which has the same value throughout the invocation of the shader (thus, "uniform;" you may see developers more familiar with D3D refer to these kind of variable as a "shader constant" variable as well).
Every time you want to render something with this shader, you'd set the uniform variable to the value you want.
That said, however, it looks like you are just using this uniform to displace some object in the world. The more common approach to this is to use a world transformation matrix for the object which is applied in the shader. This is implemented (in modern OpenGL) as a matrix uniform variable, much like your simple vector uniform, but also allows for rotation and scaling and is the more common approach. It will also scale equally well to an instancing scenario where you have several objects sharing the same geometry but in different world positions (as it sounds like, from your comments, you are wanting to have eventually).