It's easy, really. You need to parent the root AND everything that is not in it's hierarchy but is still part of the character ( like ik handles or any custom gizmos ). You need to parent that to a locator.
Now when you move that locator, whole character setup follows uniformly, nothing is left behind. Now you can attach this locator to a motion path.
It can be done other (better) ways too, but let's have it like that for start.
You just need to take care not to make a very common mistake - to indirectly parent something twice to the same parent, because then you'll get so called double transforms.
For example, if you parent skeleton root and a joint belonging to same skeleton to a common locator - moving a locator will cause joint to move twice faster than the root because it transforms once following the root ( which is following the locator ) and once again following the locator.