We introduce a potential-functional embedding theory by reformulating a recently proposed density-based embedding theory in terms of functionals of the embedding potential. This potential-functional based theory completes the dual problem in the context of embedding theory for which density-functional embedding theory has existed for two decades. With this potential-functional formalism, it is straightforward to solve for the unique embedding potential shared by all subsystems. We consider charge transfer between subsystems and discuss how to treat fractional numbers of electrons in subsystems. We show that one is able to employ different energy functionals for different subsystems in order to treat different regions with theories of different levels of accuracy, if desired. The embedding potential is solved for by directly minimizing the total energy functional, and we discuss how to efficiently calculate the gradient of the total energy functional with respect to the embedding potential. Forces are also derived, thereby making it possible to optimize structures and account for nuclear dynamics. We also extend the theory to spin-polarized cases. Numerical examples of the theory are given for some homo- and hetero-nuclear diatomic molecules and a more complicated test of a six-hydrogen-atom chain. We also test our theory in a periodic bulk environment with calculations of basic properties of bulk NaCl, by treating each atom as a subsystem. Finally, we demonstrate the theory for water adsorption on the MgO(001)surface.