Другое дело что вам скорее всего не нужен каноникал, скорее всего вам бы изменить условия доставки, оплаты и прочее что меняется для разных городов и оставить страницы без канониклов, чтобы обе проиндексировались.
К примеру, писать туда время начала работы скрипта. Если скрипт дёргается только через cron и никак иначе, то достаточно брать кол-во секунд (функция time) - два раза в одну и ту же секунду скрипт запущен не будет. Заодно при таком подходе можно реализовать истечение блокировок (записи, заблокированные более давно, чем N секунд назад, условно считать незаблокированными)
Если бы вы составили себе труд ознакомиться с документацией, то знали бы, что для игнорирования содержимого инпута надо при вызове метода search указать значение. В вашем случае, раз хотите получать полный список - передавайте пустую строку:
Если вы уже используете xdebug, то ставьте брейкпоинт и смотрите трейс в дебаггере.
Попробуйте поработать в какой-то приличной IDE типа PHPStorm, PHPEd или других.
Сделать при наведении фон родительского div-а чёрным с нужной прозрачностью, например: .col-xs-6:hover {background: rgba(0,0,0,.2);}
Скорее всего вариант, который вам нужен - здесь