It doesn't work exactly like a promo code, in the sense there is no one-time use code. But if you have a restriction on the adopt itself then a user couldn't adopt more than the allowed amount.
Say you make a new adopt and you set a restriction that they can only own 1 of that adopt. This method will let them adopt that 1 and then won't let them get another.
If you wanted the page itself to not be able to be accessed after using the code. You could set up the code you want in the promocode admincp, then create a custom page that can't be accessed without a code, and on this page is the image.
However, promo codes are a bit limited. In the sense that there is no way for them to only be used once by users. You can only specify how much it can be used in total, or whether a certain user can use it. So if you set the code to only be used 1 time, then the first user to use it will be the only one who can.
So the best way to do it would be to just use an adopt condition that says only a certain amount of that adopt can be owned by people.
You could also use this mod:
http://www.mysidiaadoptables.com/for...ead.php?t=5023
It allows you to create a custom adopt page with conditions that hide adopts that shouldn't be able to be accessed. (Like adopts people already own 1 of)
If you want multiple pages like it, you'd need to just copy what you did and rename the files + any references to the renamed page/files.
If you have a normal adopt you want to give a modified version of (say a white horse that anyone can adopt, but you want to give out a limited edition version with a pre-set name and stats) then you might struggle to only let people have 1 of them. The easiest plan would probably to be to create a new adopt in the database that has an adopt condition. Even if it's a duplicate of an already existing adopt, except some of the information, I'd say this is the best plan for what you want to do