Generating differnet addresses from same public key? There's a gap in my understanding regarding the generation, via hashing, of bitcoin addresses. (I'm quoting from Antonoplous  below for convenience, but I have consulted multiple other sources.)

According to Antonpolous:


  "The bitcoin address is derived from the public key through the use of
  one-way cryptographic hashing. (Antonpolous, 2014:71)"


My understanding of public keys is that they do not change once generated from a private key (via ECDSA multiplication):


  "Because the generator point is always the same for all bitcoin users,
  a private key k multiplied with G will always result in the same
  public key K.(Antonpolous, 2014:68)"


Best practice regarding bitcoin addresses recommends that:


  "a unique address should be used for each transaction. Most Bitcoin
  software and websites will help with this by generating a brand new
  address each time you create an invoice or payment request.
  (Antonpolous, 2014:188)"


I understand that performing a hash function on the same data will always produce the same result (digest):


  "For any specific input, the resulting hash will always be the same
  and can be easily calculated and verified by anyone implementing the
  same hash algorithm." (Antonpolous, 2014:188).


Given all of the above, my question is, how can different addresses be generated from the same, unchanging input, namely the public key? 

Is it the double-hashing (SHA256 + RIPEMD160)? Is it the address pool? Is it due to deterministic wallets? The answer is probably simple and staring me in the face, but I can't see it. Thanks for any clarification.
For some reason you came to the conclusion that you can just derive multiple addresses from a single public key, but the quoted text doesn't say that. It says that the public key is uniquely generated from the private key (by multiplying the curve generator G by a random 256-bit number which is the private key). It also says that the address is derived from the public key by hashing it (RIPEMD160 &amp; SHA256). Finally it says that it's a good idea to use a different address every time.

That doesn't mean you generate multiple addresses from the same public key. Each time you have to generate a new private key, then public key from that private key and finally the address from the public key.