Simulating a 'shift key' without using relays
Additional switching doesn't seem necessary.

Just receive all four buttons on your PCB, then implement the modalities in software/firmware:

A | B | C | D &lt;-- Buttons (0=pressed, 1=open)
-------------
1 | 1 | 1 | 1 &lt;-- Nothing pressed (idle)
0 | 1 | 1 | 1 &lt;-- Button A
1 | 0 | 1 | 1 &lt;-- Button B
1 | 1 | 0 | 1 &lt;-- Button C
0 | 1 | 1 | 0 &lt;-- Button Shift-A
1 | 0 | 1 | 0 &lt;-- Button Shift-B
1 | 1 | 0 | 0 &lt;-- Button Shift-C


Using solid-state switching (or a relay) will increase the number of outputs relative to the inputs. If you have a system with only 4 button inputs (because it was designed to work with 4 button controllers) where will you connect the extra signals you generated?

If your original system was designed to receive 6 buttons, but you only have 4 buttons, then you can use either the firmware approach suggested or a decoder solution (for example 74LS148) to implement the 4 -> 6 transformation. 

If you'd like additional details on this approach please provide more information about what you are connecting the modified controller to and I'll elaborate appropriately.