Okay so I did all that, it does works better!

tho looks like it's better if the return 1 goes under the Endif, this way the item name is not written twice before being identified.
Tho I still have that problem, now that I Identified it, it shows both the "magic smith's hammer" and "The Golden Hammer" names.
Here's what I've done so far:
[ITEMDEF i_golden_hammer]
ON=@Create
Attr=attr_magic
Hitpoints=9000
Color=0b86
ON=@Click
if (<attr>&(attr_magic))
message magic smith's hammer // normal one
endif
if (<attr>&(attr_identified))
src.sysmessage @026 Item Rank: Artifact
src.sysmessage @026 Skill: Blacksmithing +100.0
message @026 The Golden Hammer
endif
Return 1
ON=@Equip
if (<attr>&(attr_identified))
src.blacksmithing = (<src.blacksmithing>+1000)
endif
ON=@Unequip
if (<attr>&(attr_identified))
src.blacksmithing = (<src.blacksmithing>-1000)
endif
Thank you again for your help ^^