if you don't have to do it for more than one "step" you could use cd - instead
so it looks like setting the symlink env variable to ignore might get your desired response
from the man page:
"symlinks (+)
Can be set to several different values to control symbolic link
(`symlink') resolution:
If set to `chase', whenever the current directory changes to a
directory containing a symbolic link, it is expanded to the
real name of the directory to which the link points. This does
not work for the user's home directory; this is a bug.
If set to `ignore', the shell tries to construct a current
directory relative to the current directory before the link was
crossed. This means that cding through a symbolic link and
then `cd ..'ing returns one to the original directory. This
affects only builtin commands and filename completion.
If set to `expand', the shell tries to fix symbolic links by
actually expanding arguments which look like path names. This
affects any command, not just builtins. Unfortunately, this
does not work for hard-to-recognize filenames, such as those
embedded in command options. Expansion may be prevented by
quoting. While this setting is usually the most convenient, it
is sometimes misleading and sometimes confusing when it fails
to recognize an argument which should be expanded. A compro-
mise is to use `ignore' and use the editor command normalize-
path (bound by default to ^X-n) when necessary.
Some examples are in order. First, let's set up some play
directories:
"