There's no perfect way to do this that I know, but I have a nice kluge that works well for me, taking advantage of how Google handles multiple accounts.
- Create a second Google account. If your office uses Google Apps, use that. If not, just make a dummy account; no biggie.
- Set your secondary account to use SafeSearch, and leave it disabled on your personal account.
- At work, make sure you log into your secondary account first, then use Google's multiple login feature to log into your primary account at the same time. At home, do the opposite (if you even log into the second account at all).
This works because the first account you log into is the default, which means it's the one that'll be picked up for searches that happen from your browser and when you go to google.com directly, but you're still never more than a click on your avatar away from using your personal or "real" account in any Google products.
Granted, this requires you have two Google accounts, so if your company doesn't use Google Apps, you'd have to make a dummy account for no purpose other than to be your default account at work. But it does get the job done.