I know Arch Linux doesn't hold your hand like other distros do, but I think it could make setting the keyboard layout easier.
Firstly, set the locale in rc.conf:
...
KEYMAP="uk"
LOCALE="en_GB.UTF-8"
...
and then reboot. Reboot? Surely there's a better way, but I don't know what it is.
Edit /etc/locale.gen to uncomment the ones you want to use — en_GB.UTF-8 and en_GB in my case.
Then you can run
# locale > /etc/locale.conf
For 'normal' sorting of ls listings etc., edit /etc/locale.conf and set
LC_COLLATE="C"
That should sort things out on the console.
For XFCE, it's tricky because the Applications Menu / Settings / Keyboard seems to be ignored. So refer to https://wiki.archlinux.org/index.php/Xorg#Setting_Keyboard_Layout_With_Hot-Plugging and add this to /etc/X11/xorg.conf:
Section "InputClass"
Identifier "Keyboard Defaults"
MatchIsKeyboard "yes"
Option "XkbLayout" "gb"
EndSection
and restart X.