Use a login shell mode instead, it will initiate the client user's profile and rc scripts. It also prevents the client user shell from inheriting host env vars.
su -l example-user
cat
command using pipe |
can only capture data from stdout.
Use this to capture data from stderr as well. Here less is used as pipe destination.
your_command 2>&1 | less