how to insert new checkpoints in a bitcoin clone
It's in form of

{block_height, uint256S("0xblock_hash")},


For example,

{134444, uint256S("0x00000000000005b12ffd4cd315cd34ffd4a594f430ac814c91184a0d42d2b0fe")},


If you search for "00000000000005b12ffd4cd315cd34ffd4a594f430ac814c91184a0d42d2b0fe", that block's hash on Blockchair,
you'll find the block with the height 134444.

Simple, huh?

EDIT: Your edit is partly corrected. Note that when you add a checkpoint, you don't hardcode the block into the client. When a user opens it for the first time, they'll download all blocks starting with the first block. Checkpoints allow the clients to verify if someone who created his/her block chain completely different than the main chain is sending you the fake chain. The clients do download the whole chain and verify the blocks with checkpoints (also see: assumevalid)