Database Schema
Complete reference for all 21 database tables in Scriptlog. All tables use utf8mb4 charset and InnoDB engine.
Note: All tables use
utf8mb4 charset and InnoDB engine.
tbl_users
User accounts and authentication.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
user_login | VARCHAR(60) | Unique username |
user_email | VARCHAR(100) | Unique email |
user_pass | VARCHAR(255) | Password hash |
user_level | VARCHAR(20) | Role (administrator, manager, editor, author, contributor, subscriber) |
user_fullname | VARCHAR(120) | Display name |
user_url | VARCHAR(100) | Website URL |
user_registered | datetime | Registration date |
user_activation_key | VARCHAR(255) | Activation token |
user_session | VARCHAR(255) | Session identifier |
user_banned | TINYINT | Ban status (0/1) |
user_signin_count | INT | Login count |
user_locked_until | DATETIME | Account lock expiry |
tbl_posts
Blog posts and pages.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
media_id | BIGINT | Featured image |
post_author | BIGINT | Author ID (FK to tbl_users) |
post_date | datetime | Publication date |
post_modified | datetime | Last modified date |
post_title | tinytext | Post title |
post_slug | text | URL slug |
post_content | longtext | Full content |
post_summary | mediumtext | Excerpt/preview |
post_status | VARCHAR(20) | publish, draft, pending, private |
post_visibility | VARCHAR(20) | public, private, password-protected |
post_password | VARCHAR(255) | Password for protected posts |
post_tags | text | Comma-separated tags |
post_keyword | VARCHAR(255) | SEO keywords |
post_type | VARCHAR(120) | blog, article, news, page |
comment_status | VARCHAR(20) | open, closed |
tbl_topics
Categories/topics for organizing posts.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
topic_title | VARCHAR(255) | Category name |
topic_slug | VARCHAR(255) | URL slug |
topic_status | ENUM('Y','N') | Active/inactive |
topic_locale | VARCHAR(10) | Language code (i18n) |
tbl_comments
Comments and replies.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
comment_post_id | BIGINT | Post ID (FK to tbl_posts) |
comment_parent_id | BIGINT | Parent comment ID (0 for top-level) |
comment_author_name | VARCHAR(60) | Author name |
comment_author_ip | VARCHAR(100) | Author IP address |
comment_author_email | VARCHAR(100) | Author email |
comment_content | text | Comment text |
comment_status | VARCHAR(20) | approved, pending, spam |
comment_date | datetime | Submission date |
tbl_media
Media library files.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
media_filename | VARCHAR(200) | File name |
media_caption | VARCHAR(200) | File caption |
media_type | VARCHAR(90) | MIME type |
media_target | VARCHAR(20) | blog, page |
media_user | VARCHAR(20) | Uploader |
media_access | VARCHAR(10) | public, private |
media_status | INT | Status flag |
tbl_menu
Navigation menus.
| Column | Type | Description |
|---|---|---|
ID | INT | Primary key |
menu_label | VARCHAR(200) | Menu item text |
menu_link | VARCHAR(255) | URL |
menu_status | ENUM('Y','N') | Active/inactive |
menu_visibility | VARCHAR(20) | Visibility setting |
parent_id | INT | Parent menu item |
menu_sort | INT | Sort order |
tbl_settings
Configuration settings.
| Column | Type | Description |
|---|---|---|
ID | INT | Primary key |
setting_name | VARCHAR(255) | Setting key |
setting_value | TEXT | Setting value |
tbl_themes
Installed themes.
| Column | Type | Description |
|---|---|---|
ID | INT | Primary key |
theme_title | VARCHAR(100) | Theme name |
theme_desc | tinytext | Description |
theme_designer | VARCHAR(90) | Author |
theme_directory | VARCHAR(100) | Directory name |
theme_status | ENUM('Y','N') | Active/inactive |
tbl_plugin
Installed plugins.
| Column | Type | Description |
|---|---|---|
ID | BIGINT | Primary key |
plugin_name | VARCHAR(100) | Plugin name |
plugin_link | VARCHAR(255) | Plugin URL |
plugin_directory | VARCHAR(100) | Directory name |
plugin_desc | tinytext | Description |
plugin_status | ENUM('Y','N') | Enabled/disabled |
plugin_level | VARCHAR(20) | Required level |
plugin_sort | INT | Sort order |
Additional Tables
| Table | Purpose |
|---|---|
tbl_user_token | Password reset tokens |
tbl_login_attempt | Login attempt tracking |
tbl_post_topic | Post-topic relationships (many-to-many) |
tbl_mediameta | Media metadata |
tbl_media_download | Download tracking |
tbl_consents | GDPR consent records |
tbl_data_requests | GDPR data requests |
tbl_privacy_logs | Privacy audit trail |
tbl_privacy_policies | Privacy policy versions |
tbl_languages | Supported languages (i18n) |
tbl_translations | Translation strings (i18n) |
tbl_download_log | File download logs |