| Sahtout | ||
| LICENSE | ||
| README.md | ||
SahtoutCMS
A modern World of Warcraft website CMS for AzerothCore WotLK 3.3.5
📖 About
SahtoutCMS is a PHP-based website CMS designed for AzerothCore WotLK 3.3.5 private servers.
It provides a complete website and administration interface for managing your WoW server, including:
- Account management
- Administration tools
- Shop system
- Voting system
- Armory
- Realm status
- SOAP commands
- Multilingual support
- Security features
- Character and item information
- Responsive WoW-themed interface
⚡ This project was created for fun and learning, but it is fully usable if you want to run it on your own server.
🎥 Demo
✨ Features
👤 Account Management
- Registration: SRP6 authentication, email activation, and resend activation
- Security: Secure login, reCAPTCHA, forgot password, and password reset
- Dashboard: Account information, password/email management, and character statistics
🛡️ Admin Panel
Users
- Website accounts
- User roles
- Email management
- Tokens and points
- User information
In-Game Accounts
- View game accounts
- Ban / unban accounts
- Manage GM roles
Characters
(Character information,Level,Gold,Teleportation,Character management)
Content
- Create, edit, and delete news
- Manage shop products and services
SOAP
- Execute AzerothCore GM commands directly from the website
⚙️ Admin Settings
- General: Logo and social media links
- SMTP: Email configuration, activation emails, and password recovery
- reCAPTCHA: Site key, secret key, and enable/disable settings
- Realm: Realm name, IP, port, and logo
- SOAP: SOAP connection and GM command settings
- Voting: Voting websites, rewards, and cooldowns
🛒 Shop System
Item Shop
(Gear,Mounts,Pets,WoW item tooltips)
Services
(Character rename,Faction change,Level boost,Gold)
Currency
- Tokens / points
- Currency management through the administration panel
🗳️ Voting System
- Multiple voting websites
- Vote rewards
- Voting cooldowns
- Vote history
- Point rewards
⚔️ Armory
Top Players (Level,PvP kills,Race,Class,Faction,Guild)
Arena Rankings (2v2,3v3,5v5)
*Wins and losses,Win rate,Rating..
Characters
- Equipment inspection
- Character statistics
- Items
- 3D model support
🎮 World of Warcraft Features
Realm
- Online / offline status
- Online players
- Server uptime
Items
- WoW-style item tooltips
- Item data retrieved directly from the game database
Characters
- Equipment inspection
- Character statistics
- 3D models
Interface
- Dark fantasy WoW-inspired theme
- Responsive design
- Discord widget
💻 Requirements
Tested Environment
| Component | Version |
|---|---|
| OS | Windows x64 |
| XAMPP | 8.2.12 |
| PHP | 8.2.12 |
| Apache | 2.4.58 |
| MariaDB | 10.4.32 |
| Also Works for Linux |
Also Works For linux
Required PHP Extensions
The following PHP extensions are required:
(bcmath,curl,gd,gmp,mbstring,mysqli,openssl,soap,xml)
Game Server
SahtoutCMS is designed for:
- AzerothCore
- World of Warcraft WotLK 3.3.5
- SOAP enabled
Make sure your AzerothCore server and databases are already installed and working before configuring SahtoutCMS.
🚀 Installation
1. Download SahtoutCMS
Extract the project to your web server's document root.
2. Windows / XAMPP Installation
For XAMPP, extract SahtoutCMS file into:
C:\xampp\htdocs\
The project root should contain files and directories similar to: ✅ Correct:
C:\xampp\htdocs\
├── admin/
├── assets/
├── includes/
├── install/
├── index.php
└── ...
Make sure the project is not nested inside another directory. ❌ Incorrect:
C:\xampp\htdocs\sahtout\sahtout\
Start Apache and MySQL/MariaDB from the XAMPP Control Panel. XAMPP is OPTIONAL but easy setup.
3. Linux / Apache Installation
Extract SahtoutCMS into your Apache document root.
The default location is usually:
/var/www/html/
For example:
/var/www/html/
├── admin/
├── assets/
├── includes/
├── install/
├── index.php
└── ...
If your Apache configuration uses another document root, place it inside that directory instead.
Make sure Apache has permission to read and execute the project files.
🗄️ Database Setup
Before running the installer, make sure your AzerothCore databases are already configured and working.
SahtoutCMS uses its own website database and also connects to the AzerothCore databases.
Import the required SQL files into their corresponding databases.
Website Database
Import the Sahtout_site SQL file Then the others.
AzerothCore Databases
Import the additional SQL files into their corresponding AzerothCore databases.
For example:
acore_auth_sahtout_site.sql
→ acore_auth
acore_world_armory_spell.sql
→ acore_world
⚠️ The exact SQL filenames and database names may vary depending on the version of SahtoutCMS and your AzerothCore installation.
Make sure the required databases exist before continuing with the installer.
🔧 Web Installer
Once the files and databases are prepared, open the installer in your browser.
XAMPP
Open:
http://localhost/install/
The installer will guide you through the required configuration steps.
Depending on the installer version, you may see pages such as:
http://localhost/install/step2_check
http://localhost/install/step3_db
http://localhost/install/step4_realm
...
Linux / Production Server
Open:
http(s)://your-domain.com/install/
Replace your-domain.com with your actual domain.
Installer Configuration
Follow the installer steps to configure:
- Database connection
- Realm information
- SMTP / email settings
- reCAPTCHA
- SOAP connection
- Other website settings
Make sure the database credentials and AzerothCore connection information are correct.
🔐 Post-Installation Setup
1. Remove the Installer
After successfully completing the installation, remove the install/ directory from your server.
install/
This is recommended to prevent unauthorized access to the installation system.
2. Configure Your Administrator Account
After installation, open the user_currencies table in your website database.
Find your account and change its Role to:
admin
Save the changes.
You can then log into the SahtoutCMS Admin Panel and configure the rest of your website from there.
🛠️ Development
SahtoutCMS is still under active development.
Recent improvements include:
- 🎨 UI and responsive design improvements
- 🧹 CSS / JavaScript cleanup
- 🔐 Security improvements
- ⚙️ Installer improvements
- 🛡️ Admin Panel improvements
- 🌐 Multilingual support
- 🚀 Performance optimization
- 🖼️ Image optimization and file-size reduction
Website images have been resized and optimized to reduce file sizes and improve loading performance.
🚧 Project Status
SahtoutCMS is usable and actively being improved. New features, optimizations, security improvements, and UI changes are continuously being developed.
If you find a bug, please open a GitHub Issue and provide as much information as possible, including:
- What happened
- What you expected to happen
- Steps to reproduce the issue
- PHP / Apache version
- Relevant error messages
- Screenshots if applicable
🤝 Contributing
Contributions, suggestions, bug reports, and improvements are welcome!
Contribution Workflow
- Fork the repository
- Create a new branch
- Make And Test your changes
- Push your branch
5. Open a Pull Request
📄 License
SahtoutCMS is released under the MIT License. See the LICENSE file for more information.
⭐ Support
If you find SahtoutCMS useful, consider giving the repository a ⭐ Star on GitHub.
Your support helps the project grow!
📸 Screenshots
Made with ❤️ by Blodyiheb
Good luck, and I hope you enjoy SahtoutCMS!