# HowToMalaysia Site Settings Documentation

Generated on 2025-10-12 18:37:54

## Settings Overview

Total Settings: 120

## Security Settings

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `admin_access_logging` | 1 | boolean | Enable logging of admin access attempts |
| `admin_login_page` | /admin/login.php | text | Admin login page URL |
| `admin_login_url` | https://howtomalaysia.com/a... | text |  |
| `admin_security_level` | enhanced | text | Current admin security implementation level |
| `custom_admin_path` | /admin | text |  |
| `force_https_admin` | 1 | boolean |  |
| `login_rate_limit` | 5 | number | Maximum login attempts per minute per IP |
| `max_login_attempts` | 5 | text |  |
| `password_min_length` | 8 | number | Minimum password length for user accounts |
| `password_require_special` | 1 | boolean | Require special characters in passwords |
| `recommended_admin_path` | /admin/login.php | text | Recommended secure admin login path for future implementation |
| `security_implementation_date` | 2025-10-12 17:54:10 | text | Date when security enhancements were implemented |
| `visitor_login_integration` | enabled | boolean | Login integration on landing page - enabled with modal and navigation |

## Email Configuration

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `admin_email` | yuhanshah.kamal@gmail.com | text | Admin notification email |
| `contact_email` | yuhanshah.kamal@gmail.com | text | Main contact email |
| `email_notifications_enabled` | true | boolean | Master switch for email notifications |
| `email_signature` | Best regards,
How To Malay... | text | Email signature |
| `email_verification_required` | 1 | boolean | Require email verification for new accounts |
| `mail_from_email` | yuhanshah.kamal@gmail.com | text | Email sender address |
| `mail_from_name` | How To Malaysia | text | Email sender name |
| `notification_emails` |  | text | Additional email addresses for notifications (one per line) |
| `smtp_encryption` | tls | text | SMTP encryption method (tls/ssl/none) |
| `smtp_host` | smtp.gmail.com | text | SMTP server host |
| `smtp_password` | Yuhan@5522 | text | SMTP password |
| `smtp_port` | 587 | number | SMTP server port |
| `smtp_username` | yuhanshah.kamal@gmail.com | text | SMTP username/email |

## Feature Toggles

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `allow_guest_comments` | 0 | boolean | Allow non-registered users to comment |
| `allow_html_content` | 1 | boolean | Allow HTML in article content |
| `allow_registration` | 1 | boolean | Allow new user registration |
| `enable_comments` | 1 | boolean | Enable article comments |
| `enable_newsletter` | 1 | boolean | Enable newsletter subscription |
| `enable_ratings` | 1 | boolean | Enable article ratings |
| `enable_search` | 1 | boolean | Enable search functionality |
| `enable_social_sharing` | 1 | boolean | Enable social media sharing buttons |
| `enable_two_factor` | 0 | text |  |
| `show_author_bio` | 1 | boolean | Display author biography on articles |
| `show_breadcrumbs` | 1 | boolean | Display breadcrumb navigation |
| `show_footer_newsletter` | true | boolean |  |
| `show_footer_sitemap` | true | boolean |  |

## Other Settings

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `allowed_file_types` | jpg,jpeg,png,gif,pdf,doc,docx | text | Allowed file types for uploads |
| `article_word_count_display` | 1 | boolean | Display estimated reading time and word count |
| `articles_per_page` | 12 | number | Number of articles per page |
| `auto_save_interval` | 60 | number | Auto-save interval in seconds for article editor |
| `backup_enabled` | 1 | text |  |
| `cdn_enabled` | 0 | boolean | Enable CDN for static assets |
| `comment_moderation` | 1 | boolean | Require moderation for user comments |
| `content_moderation` | 0 | boolean | Require moderation for published content |
| `currency` | MYR | text | Default currency code |
| `currency_symbol` | RM | text | Currency symbol |
| `date_format` | M j, Y | text | Date format for display |
| `default_article_status` | published | text | Default status for new articles |
| `default_landing_page` | index.php | text | Default landing page for website visitors |
| `display_related_articles` | 1 | boolean | Show related articles at bottom of posts |
| `dynamic_navigation` | true | boolean | Navigation changes based on user authentication status |
| `excerpt_length` | 200 | number | Default excerpt length in characters |
| `featured_image_required` | 1 | boolean | Require featured image for articles |
| `footer_content` | Discover Malaysia with our ... | text |  |
| `footer_copyright` | © 2025 'How To' Malaysia. ... | text |  |
| `footer_custom_html` |  | text |  |
| `footer_social_links` |  | text |  |
| `free_article_limit` | 3 | number | Number of premium articles free users can read per month |
| `google_analytics_id` |  | text | Google Analytics tracking ID |
| `guest_landing_page_enabled` | true | boolean | Dynamic guest vs member landing page experience |
| `guest_welcome_section` | true | boolean | Guest-specific welcome section with conversion elements |
| `header_announcement` |  | text |  |
| `header_custom_html` |  | text |  |
| `header_navigation_style` | horizontal | text |  |
| `image_optimization` | 1 | boolean | Enable automatic image optimization |
| `ip_whitelist_enabled` | 0 | boolean | Enable IP whitelist for admin access |
| `landing_page_cta_sections` | navigation,hero,content,footer | text | CTA sections added to landing page for user engagement |
| `language` | en | text | Default language |
| `lazy_loading_enabled` | 1 | boolean | Enable lazy loading for images |
| `maintenance_mode` | false | boolean | Maintenance mode status |
| `max_article_length` | 50000 | number | Maximum article content length in characters |
| `max_tags_per_article` | 10 | number | Maximum number of tags per article |
| `max_upload_size` | 5242880 | number | Maximum file upload size in bytes (5MB) |
| `member_dashboard_integration` | true | boolean | Logged-in users see member-specific content |
| `notify_new_articles` | false | boolean | Notify when articles are published |
| `notify_new_comments` | true | boolean | Notify admin of new comments |
| `notify_system_errors` | true | boolean | Send error notifications to admin |
| `notify_user_registration` | true | boolean | Notify admin of new user registrations |
| `notify_weekly_summary` | false | boolean | Send weekly analytics summary |
| `registration_fee_display` | RM10 | text | Registration fee prominently displayed on landing page |
| `revenue_share_enabled` | 0 | boolean | Enable revenue sharing with content authors |
| `session_regenerate_id` | 1 | boolean | Regenerate session ID on login for security |
| `session_timeout` | 3600 | text |  |
| `time_format` | g:i A | text | Time format for display |
| `timezone` | Asia/Kuala_Lumpur | text | Default timezone |
| `trial_period_days` | 7 | number | Free trial period in days for new subscribers |
| `two_factor_enabled` | 0 | boolean | Enable two-factor authentication for admin accounts |

## Performance Settings

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `cache_duration` | 3600 | number | Cache duration in seconds (default: 1 hour) |
| `cache_enabled` | 1 | boolean | Enable page caching for better performance |
| `compression_enabled` | 1 | boolean | Enable GZIP compression for web pages |
| `minify_css` | 1 | boolean | Minify CSS files for faster loading |
| `minify_js` | 1 | boolean | Minify JavaScript files for faster loading |

## URL Configuration

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `cdn_url` |  | text | CDN base URL for static assets |
| `default_website_url` | https://howtomalaysia.com | text |  |
| `development_url` | http://localhost/HowToMalay... | text |  |
| `enable_url_rewrite` | 1 | text |  |
| `facebook_url` |  | text | Facebook page URL |
| `footer_contact_url` |  | text |  |
| `footer_privacy_policy_url` |  | text |  |
| `footer_terms_url` |  | text |  |
| `header_logo_url` |  | text |  |
| `instagram_url` |  | text | Instagram profile URL |
| `staging_url` | https://staging.howtomalays... | text |  |
| `twitter_url` |  | text | Twitter profile URL |

## Monetization Settings

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `payment_gateway` | stripe | text | Primary payment gateway (stripe, paypal, razorpay) |
| `premium_price_monthly` | 9.90 | number | Monthly subscription price in local currency |
| `premium_price_yearly` | 99.00 | number | Yearly subscription price in local currency |
| `subscription_enabled` | 1 | boolean | Enable subscription-based premium content |
| `subscription_reminder_days` | 3 | number | Days before subscription expiry to send reminder |
| `visitor_subscription_integration` | enabled | boolean | Subscription integration on landing page - enabled with CTA sections |

## General Site Settings

| Setting Key | Current Value | Type | Description |
|-------------|---------------|------|-------------|
| `site_copyright` | © 2025 HowToMalaysia. All ... | text | Copyright notice for the website |
| `site_description` | Comprehensive guides for to... | text | Site description for SEO |
| `site_favicon` | /assets/images/favicon.ico | text | Path to website favicon |
| `site_keywords` | Malaysia travel guide, expa... | text | SEO keywords for the website (comma-separated) |
| `site_logo` | /assets/images/logo.png | text | Path to website logo |
| `site_name` | 'How to' Malaysia | text | Website name |
| `site_tagline` | Your Complete Guide to Livi... | text | Website tagline |

## Troubleshooting

### Common Issues

1. **Boolean values not working**: Ensure boolean settings use '1' for true and '0' for false
2. **URL issues**: Make sure all URLs include the protocol (http:// or https://)
3. **Email not working**: Check SMTP settings and ensure passwords are correct

### Setting Types

- **text**: String values, can contain any text
- **number**: Numeric values only
- **boolean**: Use '1' for enabled/true, '0' for disabled/false
- **json**: JSON formatted data structures

