How do I decide whether to use 還是/还是 or 或者 還是/还是 (háishì) and 或者 (huòzhě) seem to have very similar meanings:

還是/还是: or; still; nevertheless
或者: or; possibly; maybe

When I want to say 'or', how to I choose which to use, and are there any hard and fast rules about this? Furthermore, are there yet more ways to say 'or'?
Very good question.
还是 is usually used in asking questions. For example:

你想去北京还是上海呢? = Did you want to go to Beijing or Shanghai?
这是橙子还是橘子? = Is this orange or mandarin?

或者 is usually used in declarative sentence. For example:

我想去北京或者上海. = I wanted to go to Beijing or Shanghai.
你可以叫我小王或者老王. = You can call me Xiao Wang or Lao Wang.