Как запускать js только на страницах в URL которых есть /shop/?
Вот так, если надо, чтобы путь содержал /shop/:if (window.location.pathname.indexOf('/shop/') >= 0)) {
  alert('Работает');
}
Вот так, если надо, чтобы страница была в директории shop, которая располагается в корне сайта (как в примерах в вопросе):if (window.location.pathname.match(/^\/shop(\/|$)/)) {
  alert('Работает');
}
а не легче проверять класс? добавь к примеру для боди на всех страницах типа "/shop/", класс ".shop" а потом проверяй:if ( $('.shop').length > 0 ) {
    ...
}