Hotel & Accommodation Website Script

Hotel website with rooms, amenities and a reservation request form, managed from an admin panel

Tourism & Hotel
Language note

The interface of the website and the admin panel comes in Turkish and English. You choose the site language and the panel language separately under “Site ayarları” (Site Settings), and you can also switch the panel language with the globe icon at the top right of the panel.

More languages can be added: copy the en.php file in the dil folder of the package and translate it (the steps are in dil/OKUBENI.txt). The language you add appears automatically in the language lists of the site settings, and updates do not touch your language files. Texts that are not translated appear in English; if you prefer, they can be shown in Turkish.

The content you publish (rooms, amenities, pages, blog posts and so on) is not translated; it stays in the language you write it in. Form warnings and date formats follow the selected site language; the notification e-mails of the reservation request and contact forms are written in the panel language.

Where this page names a section of the panel or of the site, the name is given as it appears in the Turkish interface, in quotation marks, followed by its translation in parentheses; in the English interface the same sections appear under their English names.

Who it is for

Made for hotels, guesthouses and similar accommodation businesses and for agencies that build sites for them. On your own domain you describe your room types and amenities, show pictures of your hotel, and inform guests with blog posts and PDF documents. A visitor fills in the reservation request form on the site; the request is listed in your panel, and you get in touch with the guest to settle the reservation together. The form only collects requests: room availability and payment are not part of the site.

You do not need to know how to code. The browser wizard handles the installation, and you enter your content in the admin panel.

Website features
Home page
  • Welcome slider: up to 10 slides. Each slide has a small top line, a heading, a sub-heading, an optional button and an image; every slide also carries a “Rezervasyon Talebi Oluştur” (Create Reservation Request) link. For the button link you enter an address inside the site (for example odalar) or a full address. With more than one slide the images change automatically; on devices set to reduce motion, slides do not change automatically. A slide without an image is not shown.
  • About summary: an image, the company name, the beginning of your “Hakkımızda” (About Us) text and a button that leads to the “Hakkımızda” (About Us) page.
  • Hotel facilities: the first eight facilities you enter in the panel appear as boxes with an icon, a name and a short text. You choose the icon from a ready-made list.
  • Rooms: the first six rooms appear as cards with an image, capacity, size, bed layout and a short description; the “Tüm Odalar” (All Rooms) button leads to the rooms page. Below the cards a note says “Oda fiyatları için lütfen iletişime geçin.” (Please contact us for room prices.).
  • Call banner: you enter a heading and a short text, and your phone number appears next to the text automatically; the button of the banner leads to the reservation request page. If you leave the heading empty, the banner does not appear.
  • Gallery preview: the first eight gallery images appear on the home page; the “Tüm Galeri” (Full Gallery) button leads to the gallery page.
  • Promotional video: if you enter a YouTube link in the panel, a video section appears on the home page (heading, text and background image are optional). The video is not embedded in the page; the play button opens it on YouTube in a new tab. If the link is empty, the section does not appear.
  • Counters: four counters (for example 150+). You enter the value and the text yourself; when the page comes into view, the numbers appear by counting up. A counter whose value you leave empty does not appear.
  • Guest reviews, reservation request, team and latest posts: the latest 12 reviews appear in a slider. The reservation request form is also on the home page; if you upload an image, it appears next to the form together with your phone number, your check-in and check-out times and a button that leads to the contact page. Up to 12 team members appear in a slider and the latest three blog posts appear as cards. A section with no entries is not drawn on the home page at all.
Reservation request and contact
  • Reservation request form: found on the home page and on the “Rezervasyon Talebi” (Reservation Request) page. Check-in date, check-out date, number of guests (1 to 20), full name, phone and e-mail are required. Room type (from the rooms you have in the panel) and a note are optional. The check-in date must be today or later and the check-out date must be after the check-in date; both can be at most 12 months ahead. The form has a required KVKK consent checkbox. KVKK is the Turkish personal data protection law. Below the form, the visitor is told that the form is a reservation request, that it does not include room availability or payment, and that the reservation is confirmed once you get in touch and approve it.
  • Request from a room page: every room page has a Reservation Request box; its button opens the form with that room selected.
  • Requests in the panel: incoming requests are listed in the “Rezervasyon talepleri ve mesajlar” (Reservation requests and messages) section of the panel, which only the administrator sees. If you set up “E-posta ayarları” (E-mail Settings) and switch notifications on, every request also reaches you by e-mail, and when you reply to the e-mail, the reply goes to the visitor’s address.
  • Contact form: full name, e-mail, phone, message title and message text fields (all required) and a KVKK consent checkbox. Incoming messages are listed in the same section.
  • Contact page: information boxes with address, phone, e-mail and reception hours, and a map (Google Maps or OpenStreetMap embed code). Details and map you leave empty do not appear on the site.
  • KVKK consent checkbox: required on the reservation request and contact forms. The privacy notice link points to the page you choose in the panel; the same link also appears in the footer of the site. The text that comes with the sample content is only a sample; because guest details are personal data, you need to prepare your own privacy notice, with a legal adviser if necessary.
Rooms, amenities and team
  • Rooms: for each room type you enter a name, capacity (guests), size (m²), bed layout, a short description, a detailed description, a list of room amenities, an image and an order. If you leave the size at 0, it is not shown on the site. Rooms are listed as cards on the rooms page and also appear as a drop-down list in the menu. Every room has its own page, a side list of the other rooms and a reservation request box. Rooms have no price field; the site shows “Oda fiyatları için lütfen iletişime geçin.” (Please contact us for room prices.).
  • Room amenities: you write the amenities of each room line by line (at most 12 lines); they appear as a checklist on the room page.
  • Hotel facilities: you enter a name, an icon, a short description and an order. You choose the icon from a ready-made list of 18 icons, such as Wi-Fi, breakfast, restaurant, pool, spa and parking. Facilities appear as boxes with icons on the home page and on the “Hakkımızda” (About Us) page; there is no separate page for facilities.
  • Team: you enter full name, position, photo, status and order. The team is shown as cards on the “Ekibimiz” (Our Team) page, in a slider on the home page and on the “Hakkımızda” (About Us) page. A member without a photo gets a person icon. A member whose status is “Taslak” (Draft) does not appear.
  • Guest reviews: you enter full name, type of stay or city (optional), the review and an optional photo. Reviews appear in a slider on the home page and on the “Hakkımızda” (About Us) page. Publish reviews only with the consent of the people who wrote them.
Corporate pages, blog and gallery
  • “Hakkımızda” (About Us): page heading, text, mission, vision, signature line and an image. A mission or vision part you leave empty does not appear. The page also carries the counters, the hotel facilities, the team cards and the guest reviews.
  • Frequently asked questions: you enter questions and answers in the panel; the answer opens when the visitor clicks a question. Once at least one question exists, its link appears in the menu under “Kurumsal” (Corporate).
  • Documents (PDF): you upload PDF files such as a hotel brochure or guest information from the panel (at most 10 MB per file). For each document you enter a link text and an order. They are listed on the “Belgeler” (Documents) page with a “PDF indir” (Download PDF) button; when the visitor clicks, the file downloads as a PDF.
  • Extra pages: you add as many pages as you like from the panel (for example a privacy policy, the KVKK privacy notice or event information). For each page you choose whether it is shown in the top menu (under “Kurumsal” (Corporate)) and in the footer of the site.
  • Blog: articles with a title, status (“Yayında” (Published) or “Taslak” (Draft)), short description, image and rich text. Articles are paginated with 9 per page; the article page has a side list of the latest articles. A “Taslak” (Draft) article does not appear on the site.
  • Gallery: you enter an image title, an image and an order. Clicking an image enlarges it; the previous and next buttons, the arrow keys, the swipe gesture on a phone, the close button and the Esc key all work.
Look, mobile and search engines
  • Color: you pick two colors in the panel. The main color is applied to buttons, the menu accent and active items; the dark color is applied to the top bar, the footer and dark sections. Text on top of the main color turns dark or white automatically, depending on whether the color is light or dark.
  • Logo, second logo and images: you upload your logo for light backgrounds, a second logo for the dark footer and your site icon (favicon). If there is no second logo, the main logo appears in a white box in the footer; if there is no logo at all, the company name appears as text. You can upload images for the title band at the top of the inner pages, for the reservation section on the home page and for the background of the video section; if you do not upload a title band image, the band appears in your dark color.
  • Top bar, header and footer: the top bar shows the phone number, e-mail, address, a WhatsApp link and social media icons; the menu has a “Rezervasyon Talebi” (Reservation Request) button and your phone number. The footer shows your short introduction text, links, the first six rooms, your contact details (address, phone, reception hours, check-in and check-out times, e-mail) and the copyright line. Details you do not enter are not drawn.
  • Social media: your Facebook, X (Twitter), Instagram, LinkedIn and YouTube links appear as icons; an icon you do not fill in is not drawn. If you enter your WhatsApp number, a WhatsApp link appears in the top bar.
  • Switch sections on/off: from a single page you switch the Rooms, Hotel facilities, Blog, Gallery, Documents, Frequently asked questions, Guest reviews and Team sections on or off. A section you switch off disappears from the menu and the home page, and its page address does not open either. The menu link of a section with no entries does not appear either.
  • Mobile friendly: on small screens the menu turns into a mobile menu that opens on tap; the page layout adapts to the screen width.
  • Page-specific title and description: every page carries its own title (“Page | Company”), description and social sharing (Open Graph) tags. On room and blog post pages the sharing image is taken from the item’s own image. You enter the site title, description and keywords under “Site ayarları” (Site Settings).
  • Footer credit: you can change or remove the “TiklaWeb tarafından geliştirildi” (Developed by TiklaWeb) line at the bottom of the site.
  • 404 page: for an address that does not exist, a switched-off section and an article that is not published, an error page with a button back to the home page is shown.
Admin panel
  • “Özet” (Summary): for the administrator, the numbers of unread requests and messages, reservation requests, room types and published blog posts, plus the latest five reservation requests and the latest five messages. The side menu shows the number of unread records as a badge.
  • “Rezervasyon talepleri ve mesajlar” (Reservation requests and messages): the administrator sees reservation requests and contact messages in one list and tells them apart by type. A request shows name, e-mail, phone, room type, check-in and check-out dates, number of nights and guests, the time of the KVKK consent and the note; a message shows subject and text. Unread records are marked, and you can delete records. An editor account sees only the contact messages.
  • Rooms, hotel facilities, team and blog: you add, edit and delete entries. The lists have search and sorting.
  • Pages, gallery and documents: you manage the extra pages, the gallery images and the PDF documents.
  • Site content: “Ana sayfa kaydırıcısı” (Home Page Slider), “Ana sayfa çağrı bandı, video ve sayaçlar” (Home page call banner, video and counters), “Hakkımızda” (About Us), “Yorumlar” (Reviews), “Sık sorulan sorular” (Frequently Asked Questions), “Site görselleri” (Site Images), “Sosyal medya bağlantıları” (Social Media Links) and “Bölümleri aç/kapat” (Switch Sections On/Off). The Summernote editor is used in rich text fields.
  • E-mail settings: once you enter your SMTP details and switch notifications on, the reservation request and contact form e-mails work. You test the settings with the “Deneme e-postası gönder” (Send test e-mail) button.
  • “Site ayarları” (Site Settings): site title, company name, description and keywords, phone, WhatsApp number, e-mail, reception hours, check-in and check-out times, address, the short introduction text shown in the footer, copyright line, main color, dark color, KVKK privacy page, map, logo, second logo, site icon, site language and panel language.
  • Users and permissions: you add administrator and editor accounts. The editor manages the content sections and the contact messages; reservation requests, “Site ayarları” (Site Settings), “E-posta ayarları” (E-mail Settings) and “Kullanıcılar” (Users) are open only to the administrator. Permissions are checked on the server. Every user changes their own name and password on the “Profil ve şifre” (Profile and Password) page.
  • Forgot password: the link on the panel login page resets the password by e-mail (if “E-posta ayarları” (E-mail Settings) is set up). The reset link is valid for 1 hour and can be used once.
  • Custom code: under “Site ayarları” (Site Settings) you add your own code (for example a statistics script) to the top and bottom of the site. These fields are open only to the administrator.
Setup and updates
  • Five-step setup wizard: requirements, license, database, site and administrator details, finish. The wizard checks your server itself.
  • Setup language: in the wizard, choose Turkish or English at the top right. With an English installation, the starting and sample content is in English too.
  • Sample content or empty setup: start filled in like the demo and edit from there, or enter your content from scratch. The reservation request and message list starts empty in both cases.
  • Update from the panel: download the zip package of the new version from your tiklaweb.net customer area and upload it on the “Güncelleme ve lisans” (Updates and License) page of the admin panel. Files and database are backed up first. If an error occurs, the site returns to its previous state. Your uploaded images and PDF documents, settings and content are kept.
  • Verified packages: the signature of the update package is checked; only packages downloaded from tiklaweb.net are installed.

A detailed setup guide comes in the package you download as the KURULUM.html file. The guide contains the rules that come ready for Apache and LiteSpeed, and the rules you need to add for Nginx and IIS.

License

Each license is for the single domain name you specify when ordering. A domain name change is a paid service and is handled through a support request. The license cannot be transferred free of charge. The site does not open on an unlicensed domain and the visitor is redirected to a license warning page. A separate license is required to use it on another domain.

Technical details
  • PHP 8.2 or higher, MySQL or MariaDB
  • Framework: PHP (PDO), its own router and Twig 3 templates. Page addresses are readable (for example /odalar/3-aile-odasi); this needs URL rewriting on the server. On Apache and LiteSpeed the .htaccess file that comes in the package does this; for Nginx and IIS the rules are in the KURULUM.html file
  • Site: Bootstrap 5 styles, Swiper and Font Awesome Free 6; the Montserrat font comes with the package and is not loaded from an external server. Panel: DataTables and the Summernote content editor
  • E-mail is sent with PHPMailer 6.9; the SMTP password is stored encrypted. A form entry is saved to the database first; if the server supports it, the e-mail is sent after the visitor has received the response
  • Interface texts are kept in the language files in the package (Turkish and English included, a new language can be added)
  • Signed form token, a hidden trap field and a limit of 8 submissions per IP in 10 minutes on the reservation request and contact forms; in a reservation request the room type is accepted only from the names saved in the panel, the dates are verified on the server and a past day cannot be chosen
  • CSRF verification on panel actions; a temporary block after 5 failed attempts in 15 minutes on panel login, and the session closes after 2 hours of inactivity
  • Reservation requests contain personal data, so in the panel only the administrator account sees, reads and deletes them; they are not shown to an editor account
  • The type of images uploaded from the panel is verified from content (JPG, PNG, WebP; at most 8 MB) and, if the GD extension is on, they are converted to WebP; PHP does not run in the upload folder
  • A PDF document is accepted only if it carries the PDF signature and an end-of-file marker (at most 10 MB). The documents folder cannot be accessed directly; the file is downloaded as an attachment through the site
  • The panel’s rich text fields are filtered on the server when saved (HTMLPurifier); the admin panel sends a Content Security Policy (CSP) header; administrator passwords are stored hashed
  • The video link accepts only YouTube addresses; the map area accepts only Google Maps and OpenStreetMap embed addresses
  • Database details and backups are kept in a folder outside the web root if your hosting allows it
  • A security audit made of code review and live attack tests was carried out before sale
Demo

Explore the site and admin panel in the read-only demo. The demo is installed in Turkish; in the admin panel you can switch the panel language to English with the globe icon at the top right. The hotel name (“Örnek Otel” (Sample Hotel)), rooms, hotel facilities, team, guest reviews, gallery images and PDF documents in the demo are samples. In the demo panel you see a few sample records in the “Rezervasyon talepleri ve mesajlar” (Reservation requests and messages) list. WhatsApp, social media links, the map and the promotional video are left empty in the demo; once you fill them in the panel, they appear on the site.

Changes cannot be saved in the demo; the reservation request and contact forms do not save records or send e-mails. The demo is reset every night. Sensitive pages such as e-mail settings, users and password forms cannot be viewed in demo mode, and “Forgot password” is switched off in the demo. These login details are for the demo site only. In the installation you purchase, you set the administrator account yourself.

Support

If you get stuck, open a support ticket from your tiklaweb.net customer area or write to destek@tiklaweb.net.

A ready-made website for hotels. Rooms, amenities, reservation request form, blog, gallery. Wizard setup, Turkish and English.
  • Step 1, preparation: On your hosting, set the PHP version to 8.2 or higher and create an empty MySQL/MariaDB database and user.
  • Step 2, files: Upload the contents of the public_html folder in the package you downloaded (including the hidden .htaccess file) to the publishing folder of your domain.
  • Step 3, wizard: Open your domain in the browser. The setup wizard starts automatically; you can choose Turkish or English with the links at the top of the page.
  • Step 4, installation: Follow the steps of the wizard: requirements, license, database details, site and administrator details. Choose sample content or an empty setup.
  • Step 5, panel: Log in at yourdomain.com/admin/ with your administrator account and fill in the “Site ayarları” (Site Settings), KVKK page, “Odalar” (Rooms), “Otel olanakları” (Hotel facilities), “Belgeler” (Documents) and “E-posta ayarları” (E-mail Settings) sections.

The detailed setup guide comes in the package you download as KURULUM.html. If you use Nginx or IIS, the required server rules are in this guide too.

2.0.0 — First release for sale

First release of the Hotel & Accommodation Website script.

Added
  • Browser setup wizard (requirement check, license, database, site and administrator steps).
  • Option to install with sample content or empty.
  • Turkish and English interface for the site, the admin panel and the setup wizard; language selection under “Site ayarları” (Site Settings); adding a new language by copying the language file.
  • Domain-bound license; the site does not open on an unlicensed domain.
  • Update from the panel with a zip: automatic backup, return to the previous version on error, content, PDF documents and added language files preserved.
  • Welcome slider, about summary, hotel facilities, rooms, call banner, gallery preview, optional YouTube video section, counters, guest reviews, reservation request form, team slider and latest posts on the home page; all managed from the panel.
  • Reservation request form (check-in and check-out dates, number of guests, choice of room type), a request prefilled from the room page, and the “Rezervasyon talepleri ve mesajlar” (Reservation requests and messages) section in the panel; requests are open only to the administrator.
  • Rooms (capacity, size, bed layout, room amenities) and hotel facilities (icon selection from the panel); each room with its own page.
  • “Hakkımızda” (About Us), team, guest reviews, frequently asked questions and extra pages.
  • Blog, gallery with image enlargement (previous and next buttons, arrow keys) and PDF document download.
  • Switching sections on and off, and the logo, second logo, site icon, title band, reservation section and video section images uploaded from the panel.
  • Reservation request and contact forms with a KVKK consent checkbox; privacy notice link.
  • Choice of a main color and a dark color from the panel; the text color on top of the main color is chosen automatically.
  • Changing or removing the footer credit from the panel.
  • Forgot password: reset link by e-mail, valid for 1 hour and usable once.
  • Administrator and editor user permissions.
Fixes
  • Invalid room, page and post addresses, and posts that are not published, show a 404 page instead of an error.
  • The page of a section you switch off does not open by its address either.
  • Image, social media, map, hours, video and counter fields left empty are not drawn on the site.
Security
  • Signed token and attempt limit on the reservation request and contact forms; CSRF verification, attempt limits and permission checks on panel actions.
  • Reservation requests are shown only to the administrator account.
  • The type of images uploaded to the panel is verified from content; PDF documents are checked for the PDF signature and an end-of-file marker.
  • The panel’s rich text fields are filtered when saved, and a Content Security Policy was added to the panel.
  • Administrator passwords are stored hashed and the SMTP password is stored encrypted.

The setup guide is the KURULUM.html file inside the package.

All our software is licensed domain-wide and is available for a lifetime of use. That's why you pay for one time.

The installation process is very easy. It does not have extreme and complex operations. There are instructions in the setup file. If you want us to do the installation process, this is done at an additional cost.

Our software is licensed as a domain, you need to buy the product again for each domain. The ordered script is licensed to the domain specified in the order. After the script installation is complete, no domain changes are made.

Licenses past 1 month from the order date are not changed. However, we can change the extension of the same domain as you like. For example: .net will then change to .com.

Of course. However, your hosting service must meet the "server requirements" specified on the product introduction page.

We provide technical support for any problems, errors or disruptions that may be associated with the standard operation of our products. Apart from that, you need to get paid support for all the issues.

Orders made by credit card are automatically confirmed and your account is defined. Orders paid by bank transfer are approved within the same day.

Once your order is confirmed, your download link is automatically defined for your client account.

Of course. You can pay all your payments by credit card.

Of course you can. All you have to do is to select the payment option during the order as Bank Transfer.

Special requests are made with a fee. Please contact us in this regard.

Unfortunately. Our software is domain-licensed and is in the form of file delivery and is non-refundable. For this reason, please examine our demo presentations in detail.

You can run our software in the subfolder of your site. But you can not operate it as a subdomain. A license can be defined either as a subdomain or as a main domain. In addition, dragging / dropping is sufficient to move from the subdirectory to the main directory.

Hotel & Accommodation Website Script

Tourism & Hotel
  • A ready-made website for hotels. Rooms, amenities, reservation request form, blog, gallery. Wizard setup, Turkish and English.
999 ₺ One Time
180 views
Product Details
Released5 November 2026
Last Update5 November 2026
Version2.0.0
Built WithPHP 8.2+, MySQL/MariaDB, PHP (PDO), Twig 3, Bootstrap, Swiper, Font Awesome 6, Summernote, PHPMailer
Pages Included13 ready-made sections
License1 domain, lifetime use
UpdatesIncluded while active
System Requirements
  • PHP 8.2 or higher
  • PHP extensions: pdo_mysql, mbstring, openssl, curl, zip, fileinfo, json, sodium, ctype (gd recommended)
  • MySQL or MariaDB: a new, empty database. Enter localhost in the database server field.
  • A domain name and an SSL certificate are recommended.
  • Apache or LiteSpeed hosting; .htaccess and mod_rewrite support. On Nginx and IIS, the rules in the guide must be added.
  • Writable folders: tiklaweb, uploads
  • For the reservation request and contact form e-mails, the SMTP details provided by your hosting company (entered on the “E-posta ayarları” (E-mail Settings) page)
  • The site and the admin panel come in Turkish and English, and a new language can be added. The setup guide (KURULUM.html) is in Turkish.
Tags
hotel websitehotel website scriptaccommodation websitereservation request formroom showcase websiteboutique hotel websiteguesthouse websitephp website scriptwebsite with admin panelready-made website

Other Products

Browse All Products

Home Appliance Repair Service Website Script

Technical Service & Repair 999 ₺ One Time

Car Wash & Auto Care Website Script

Automotive, Transport & Logistics 999 ₺ One Time

Gym & Fitness Website Script

Sports & Fitness 999 ₺ One Time

Cleaning Company Website Script

Cleaning & Home Services 999 ₺ One Time
Contact

Reach Sales & Support

Have a question before you buy, or need help with an existing account? Call or email us.