Ugh, Kismet is now 5yrs old and still will not pee away from home. We did a lot of all day competitions and she would be so focussed and making mistakes int he afternoon because she was busting - in the end I had to only do local comps and bring her home for a pee at lunch time. Kismet grew up with other Shelties and both those girls actually marked all the times on walks. I have never had such a pee resistent dog, but I have run into a number of them - all females tho.
I think many dogs see us only go at home, in the one place, and they take that cue from us.
The one thing that has generally worked for my other dogs is for me to pee in front of them! And it has even kind of worked for Kismet - when we walk around the technical college there are two places that I peed on a walk and she will go pee in those places. It has definitely worked for my other dogs, although nowadays I'm older and there is CCTV everywhere (and I don't hike anymore) so there's less opportunities for me to do it.
You can try , whever the dog pees, to say a marker word - like 'toilet' and just keep repeating it everytime they go (just be careful, while you train, to say it while they toilet and not before - that caused me a whole heap of issues). Hopefully the dog will pick up on the word and you can say it while out. Also, I'd suggest hanging around with some long legged, less furry male dogs so your dog can see them marking when you are out. When the other dog goes to the toilet say your marker word and be happy about them peeing.