Как заблокировать сайт от всех, кроме 1 региона России?
Никак.
По той простой причине, что уже более 60% трафика идет с мобильных.
А мобильные операторы как правило используют общероссийский пул адресов. Или, как минимум пул макрорегиона. Меня вон постоянно определяет у одного оператора как из Питера, а у другого - как из Новосибирска. Хотя я даже не в Новосибирской области.
Настроить ФаерБол на машине где поднят WP или же юзать плагин WP