MERSIN HATAY RESTAURANT · 2025 – 至今
Mersin Hatay Restaurant
为梅尔辛一家哈塔伊风味餐厅打造的三语网站。包含带价格和过敏原信息的菜单、博客、常见问题和联系方式;菜单和价格通过定制的管理后台维护。
我的角色: 设计、开发与维护:所有技术环节均由我负责。
mersinhatayrestaurant.com- 土耳其语、英语、俄语
- 3 种语言
- 道菜品
- 200+
- 所遵守的土耳其法律编号
- 4207
- 个自动化测试
- ~320
问题
餐厅的客人中既有不会说土耳其语的游客,也有说俄语的访客。菜单必须在每种语言下都完整,并且每种语言都要作为独立页面被搜索引擎收录。
价格在餐厅收银系统的二维码菜单中修改;再逐一同步到网站上既耗时又容易出错。此外,土耳其第 4207 号法律对酒精饮料广告有严格限制。
架构
网站
- Tailwind CSS
TR · EN · RU
管理后台
- Tailwind CSS
菜单、价格与博客
Laravel 13
- Laravel
Blade 与 Eloquent
数据库
- PostgreSQL
菜单、内容与队列
二维码菜单
从收银系统导入价格
翻译与原文存储在同一行,每种语言一列;数据库使用 ICU 排序规则以正确排序土耳其语。
我实现了什么
三语菜单
分类、菜品、份量和加料均提供土耳其语、英语和俄语版本;缺少俄语翻译的字段自动回退为英语。
价格与过敏原
每道菜都标注价格、过敏原信息、份量和加料选项。
从二维码菜单导入价格
收银系统二维码菜单中的价格在后台与商品自动匹配,预览确认后一步同步到网站。
多语言 SEO
每种语言都有独立地址(/en、/ru);hreflang 标签、带语言版本的动态站点地图以及 schema.org Restaurant 数据。
防垃圾信息的联系表单
结合 Cloudflare Turnstile、表单填写时间检查和频率限制的多层机器人防护。
管理后台
在同一处管理菜单分类、菜品、图片、选项和博客文章。
我解决的难题
- 1
与收银系统同步价格
我编写了一个导入流程:读取收银系统的二维码菜单,并将其条目与网站上的菜品匹配。包括自动建议、手动匹配、预览,以及在单个数据库事务中应用变更。
- 2
遵守酒精饮料广告禁令
按照第 4207 号法律的要求,我将酒精饮料的文案精简为纯粹的产品信息,添加了 18 岁以上提示,并用自动化测试守住这条规则。
- 3
在线增加第三种语言
我在网站运行期间加入了俄语:7 个分类、212 道菜品、594 个选项名称、10 条常见问题和 10 篇博客文章。缺失的翻译回退为英语,因此任何页面都不会出现空白。
技术
- Laravel
- PHP
- PostgreSQL
- Tailwind CSS
- Vite
- GitHub Actions
相关服务
您正在规划类似的系统吗? 从架构设计到正式上线,我全程为您提供支持。
联系我