iwebforyou
Start a Project

Information website for a paediatrician in Greece

A real project, shown anonymously: an information website in Greek for a paediatrician, built with Next.js and our own CMS. Articles, services and pages for parents are content types of the CMS. Every page carries structured data, and the contact form is checked on the server, with a request limit per IP address.

Real project, unnamed

IndustryHealthcare & clinics
ChallengeTrust and credibility
Decision environmentHigh-trust
ComplexityBasic
ServiceBusiness website

The project is the website of a paediatric practice in Greece. Here you see how its content is organised, how the practice manages it and how the contact form is protected.

Information website for a paediatrician in Greece Where does the project start?

The practice needs a website with two roles. For parents, it explains health topics in plain words. For the practice, it shows who the doctor is, which services are offered and how to get in touch.

A parent often reads in a hurry and on a phone, for example late at night when the child has a fever. They judge within seconds whether the page helps.

The site is in Greek only and is informational. It does not replace an examination by the paediatrician.

Information website for a paediatrician in Greece What does the website have to solve?

First, it has to answer clearly. The articles start with the answer, and their sections are questions, the way a parent asks them.

  1. Second, it has to say clearly what the practice is. A contact card is not enough. In a form that machines can read too, the site states who the doctor is, what the practice is and which questions it answers.

  2. Third, it has to receive messages without filling up with spam. The contact form is the practice's front door and has to stay clean.

Information website for a paediatrician in Greece What limits apply?

The limits come from the subject itself. Health information needs care. A small practice has no technical team, so the content must change without a developer.

Limit

What the site does

Information is general, not a diagnosis

Every article carries a fixed medical note: the information is for orientation and does not replace an examination

Parents read on a phone

Images pass through Next.js into modern formats (AVIF, WebP)

The practice writes its own texts

Articles, services and pages are written in the CMS, without code

Test copies must stay out of search

robots.txt allows indexing only on the real domain; elsewhere it blocks search engines

Passwords stay out of the code

Mail settings and passwords stay on the server, outside version control

Information website for a paediatrician in Greece What goes wrong on a paediatrician's website?

A form without a limit fills up with spam, and the real messages get lost among it. A message that fails to go out by email is lost, unless it has been stored first.

  1. A test copy open to search engines shows up next to the real site and competes with it.

  2. If every change to an article has to go through a developer, the texts go stale. And if the code does not say who the doctor is, machines cannot tell the practice from any other page.

Information website for a paediatrician in Greece What approach do we follow?

The website runs on Next.js on top of our own CMS. The CMS defines which kinds of content exist and which fields each one has.

How is the content organised?

  • Articles, at /articles. Each article has a category and child ages, and the list filters by them.

  • Services, at /services. These are six pages, each with its own address.

  • Pages for parents, at /parents. There are three: an online consultation, videos of talks and stories for children.

  • Plain pages, such as the home page, the biography, the practice and the contact page.

Articles, services and pages for parents are article types of the CMS, not separate code files. The practice writes the text in the editor of the admin, and the same layout displays the page.

An article page has a table of contents built from its sections, an image, a reading time, three related articles and a "Book an appointment" button. The frequently asked questions appear as an accordion at the end.

How is the contact form protected?

The form sends its data to the site itself, never to a third-party service. The server checks it in this order:

  1. It checks that the request comes from the site itself and that its size is small.

  2. It limits requests: 5 per 10 minutes for each IP address. The IP is read from the header set by the reverse proxy, never from a header the visitor sends.

  3. It silently drops bot requests: a hidden field that a person never fills in, and a minimum time to fill the form (3 seconds).

  4. It validates the fields. The name has 2 to 80 characters, the email must be valid and the message has 10 to 2,000 characters. A message with more than two links is rejected.

  5. It stores the message in the database and then emails it to the practice. If the email fails, the message is not lost.

If the security settings ask for a captcha, the form shows it and the server verifies it before anything is stored. When something goes wrong, the visitor sees a general message and a suggestion to phone, never a technical error.

What do search and answer engines read?

Every page has structured data, a small block of code that tells machines what the page is:

  • On all pages, the practice is described as a physician, a medical clinic and a website.

  • Articles are described as articles, with author, dates and image. They can also declare their main topics, for example a condition.

  • The frequently asked questions are written in one field and shown both as an accordion and as FAQPage. The page and its code say exactly the same.

  • Breadcrumbs describe where the page sits in the site.

Each article also has a short answer summary and key facts, written for answer engines. The sitemap is built whenever it is requested, so a new page appears without a new release of the site. robots.txt explicitly opens the site to the crawlers of the major answer engines (ChatGPT, Claude, Perplexity, Google).

Information website for a paediatrician in Greece Which decisions mattered?

Our own CMS instead of code files

The content lives in the database and changes from the admin. The doctor corrects an article without waiting for a developer and without touching the layout.

A form on the server instead of a plain email link

The check and the request limit happen where the visitor cannot skip them. The call and email buttons stay, and open the phone or mail app as usual.

One language

The site is in Greek only, because its audience is Greek parents. One language done well serves them better than two rushed ones.

Indexing only on the real domain

Test copies do not compete with the real site in the results.

Information website for a paediatrician in Greece What is the outcome?

A parent finds a clear answer and knows which doctor it comes from. The practice writes and changes its own texts. Search and answer engines read from the code who the doctor is and what each page answers. The form receives real messages and keeps spam out.

We do not publish speed scores or visit numbers for this project. If you want something similar for your own practice, read about business websites or see the healthcare clinic case study. You can also see how we check speed on delivery day.

Information website for a paediatrician in Greece Frequently asked questions

Which website is this project?

No client is named. We do not mention the doctor, the practice or the area, because the structure of the site matters, not the name. We describe how it is built and what it does.

Does the site give medical advice?

No. It is an information website for parents: its content does not replace an examination by the paediatrician. The articles explain in plain words, while the diagnosis stays with the doctor.

Why does the form have a limit of requests per IP?

A form without a limit fills up with unwanted messages. The server allows 5 requests per 10 minutes for each IP address, so the practice's inbox stays for real parents.

What does our own CMS mean for a medical practice?

The content is written in an admin built for this kind of site. Articles, services and pages have ready-made fields, and the structured data and the frequently asked questions are generated from them. The practice does not have to write code.

Do you build similar websites for medical practices?

Yes. We start from who your patients are and what they ask, not from a ready-made template. Send a project request or write to us at info@iwebforyou.com.

Next step: Information website for a paediatrician in Greece

Start your project

Send a project request, or check your current website for free. We read every message ourselves.