The best way to learn it, in my opinion, is to implement microkanren, which is micro by design for teaching purposes. It is small enough to fit in your head, understand what's unification, and play with it. Then you can jump into other implementations.
If you like clojure, you can use core.logic, although documentation is not abundant.
More prolog-related, The Power of Prolog https://www.metalevel.at/prolog has been praised here several times.
Prolog Programming for Artificial Intelligence by Ivan Bratko.
My recommendation would be to learn the real thing, not an almost, sort-of Prolog that's actually a LISP dialect in disguise.
For Prolog me too wondering if there's a great source. But I have read 'the Reasoned Schemer', it used a simple Scheme-based logical programming language for teaching purposes and it's very educative and entertaining.
Also it's got some small incompatibilities with SWIprolog and I don't know how well amzi works under Wine so it can be frustrating if you're on linux.