Here are the two books that I have. The first one will cover all IEC 61131 languages of PLCs. I believe it's a great resource for even the most seasoned of PLC programmers. It's more of a reference book, but still very useful for both beginners and seasoned programmers. It's a must if you want a reference for all programming languages, not just LD or ST, etc.
The second book is for ST language only. This is the book that I hand to a green horn structured text PLC programmer. It's very easy to read, understand and follow. If you want to learn ST, this is the book to have. I also believe ST is the first and must PLC language to learn. Learn the others too if you need or want, but make sure to learn and know ST.
I prefer books versus paid-for PLC courses because the book you will always have and can always reference. Every PLC course I've taken gives you a "work book" and that's it. All the theory is in the course but no book explaining the theory, so whatever you don't write down and/or retain after the course is over, is lost. I rarely will send a guy to a formal PLC training course. They never retain what is taught in the course, and mostly its because the poor design of the courses in my opinion, and as stated, no text book to reference afterwards.
For programming software, download and install
TwinCAT 3. He can learn, practice, and code for any of the five IEC-61131 languages, all for free. Whatever he learns using TwinCAT, he can apply the fundamentals to most any PLC vendor hardware. PLC programming is PLC programming, it's all the same. Don't buy anything, other than the books. There's no need to. This is the way I do it with our new guys and co-ops that come through our department. I hand them the books, the laptop that has TwinCAT 3 on it, a simple write-up tutorial that I wrote up (to get started in TwinCAT) and a simple little programming project, and then let them go with - "Come and see me if you get stuck somewhere".
1.
IEC 61131-3: Programming Industrial Automation Systems
2.
PLC Controls with Structured Text