You probably want to purchase two things: a web hosting account and a domain name. The web hosting account is the place where you upload your web page files to be served to the internet; the domain name is an address (like mywifesdiyshop.com.gr) which will point to your hosting account. Often, hosting companies will offer domain name registry as a side service, or vice versa (domain name registrars offer hosting as a side service), so you may be able to get both from the same service. There are many different types of hosting accounts, but if your site is relatively small and simple and won't be getting truckloads of traffic, the simplest and least expensive hosting plans, called shared hosting plans, should serve you just fine.
Everyone has their own favorite registrars and hosting companies, and so do I, but I'll spare you mine. I will offer these two bits of advice, though: One, you often really do get what you pay for in terms of service, so don't just consider the price tag when considering services. Particularly be aware of services which promise "unlimited" disk space and/or bandwidth as part of their plans; usually this just means "unlimited until we arbitrarily decide you're using too much and cut you off." Secondly, since your wife's shop will presumably be targeting a local audience, your best bet would be a hosting service which operates right there out of Greece. That way, people from Greece trying to access the site will experience the fastest response times from the server.