# EPFOin.com An educational reference portal for the Employees' Provident Fund Organisation (EPFO) in India. This website provides detailed calculators, form guides, regional office directories, news, and step-by-step procedures for employees, employers, and pensioners. ## Tech Stack - **Backend**: PHP 8.x - **Server/Routing**: `router.php` (custom lightweight router mapping URLs to static/dynamic PHP scripts with trailing slash normalization) - **Frontend**: Vanilla CSS, Vanilla JavaScript, and SVG icons. (No heavy JS frameworks, optimized for SEO, fast PageSpeed score) - **Data Source**: JSON files (`/data/offices.json`, `/data/errors.json`) - **SEO & Schema**: Structured JSON-LD schema markups on every page (FAQPage, HowTo, GovernmentOffice, etc.) ## Main Navigation & URL Structure - **Homepage**: `/` -> `index.php` (Dashboard search and index) - **State Offices Index**: `/state-offices/` -> `state-offices.php` - **State Offices Detail**: `/office/{state}/` -> `templates/state-detail.php` - **Regional/City Offices**: `/office/{state}/{city}/` -> `templates/office-detail.php` - **Zonal Offices**: `/epfo-office/{zonal_slug}/` -> `office-detail.php` - **Calculators**: `/calculators/` -> `calculators.php` (Index of PF, Pension, Gratuity, Salary, and EMI calculators) - **Forms & Claims**: `/claims/` -> `claims.php` (Lists all EPFO claims guides and PDFs) - **Form Detail**: `/claims/{form-name}/` -> `form-detail.php` - **News**: `/news/` -> `news.php` and articles at `/news/{article-slug}/` -> `news-detail.php` - **Sitemap**: `/sitemap.xml` -> `sitemap-xml.php` ## Developer Guides & Code Architecture ### 1. Last Updated Dates Every page has a variable declared at the very top: ```php $page_last_updated = '2026-05-20'; ``` - **In-Page Display**: This date is read by `get_formatted_last_updated()` (defined in `includes/date-helper.php` and included in `includes/header.php`) to display the authentic "Last Updated" badge under the page's main `