Pues ... principalmente usan técnica de "AJAX" para llamar al contenido (tu imagen) sin recargar la página .. A su vez mucho javascript para crear la capa y el "pre-load", CSS para el tema de "oscurecer" la página principal y así darle el efecto total del "foco" al "div" que abren .. En definitiva poco o nada de PHP por médio para esta taréa.
Creo que primero deberías partir por el uso de CSS/Javascript para abrir tu "div" como tu quieres y luego usar AJAX (tenemos un foro para tal fin) para llamar al contenido sin recargar la página.
Muevo tu pregunta al foro de Ajax para que te orienten.
Por cierto .. la galería en sí con todo el efecto "Ajax" y demás es un módulo (plug-in) del sistema de Blog: WordPress, parece que se llama "fgallery".. Si quieres ir investigando su código:
http://www.fahlstad.se/wp-plugins/fgallery/
Un saludo,