It was just an example, a more realistic scenario would be "categories".
These categories could then be extended into NewsCategories or ForumCategories with different logic, in order to minimize duplicate code, as all categories should have some shared functionality.
Another example, closer to the User example, could be to have a subclass called "OnlineUser" which extended User. Again duplicate code is eliminated as you don't have to check in each method if the User is online first in the UserOnline class.
In the book
PHP Objects, Patterns, and Practice they recommend that practice, and the AdminUser example is also described in there.
Your suggestion isn't really good, while it would require overwriting a large amount of methods, for each "findBy*".