Database & Meta Reference
Vote tables, counter meta, standard post meta keys, and the votes_info REST field.
WP ULike stores votes in custom database tables and syncs counters to meta. Pro adds view tracking, sessions, and standard WordPress meta keys.
Table prefix: {wpdb->prefix} (typically wp_).
Vote log tables
| Table | Content type | Key column |
|---|---|---|
{prefix}ulike | Posts | post_id |
{prefix}ulike_comments | Comments | comment_id |
{prefix}ulike_activities | BuddyPress activities | activity_id |
{prefix}ulike_forums | bbPress topics | topic_id |
{prefix}ulike_meta | Counter cache | item_id + meta_group |
Log row fields
Each vote log typically includes:
user_id— WordPress user ID (0 for guests)item_id— post, comment, activity, or topic IDstatus—like,unlike,dislike,undislikeip— visitor IP (may be anonymized or empty)date_time— vote timestampfingerprint— guest vote fingerprint (when used)
Pro adds GeoIP columns on insert: country_code, device, os, browser.
Pro-only tables
| Table | Purpose |
|---|---|
{prefix}ulike_views | Page view tracking for engagement rate |
{prefix}ulike_sessions | Pro form and OAuth session data |
Counter meta (wp_ulike_meta API)
WP ULike maintains fast counter values in {prefix}ulike_meta. Use the meta API functions rather than querying directly:
wp_ulike_get_meta_data($item_id, 'post', 'like_amount', true);
wp_ulike_update_meta_data($item_id, 'post', 'like_amount', 42, 'like');
Meta groups: post, comment, activity, topic, user, statistics.
User meta group stores serialized vote history keyed by user_{type}_status.
Standard WordPress meta [pro]
When Enable Standard Meta Data is on under Posts or Comments settings, counters sync to native meta:
| Meta key | Description |
|---|---|
like_amount | Total likes |
dislike_amount | Total dislikes |
net_votes | Likes minus dislikes |
likes_counter_quantity | Legacy counter key (migration) |
dislikes_counter_quantity | Legacy counter key (migration) |
Query with standard WordPress functions:
$likes = get_post_meta($post_id, 'like_amount', true);
Schema Generator post meta [pro]
Per-post structured data lives in post meta — not included in settings backup:
wp_ulike_pro_meta_box— main schema config flagwp_ulike_pro_{key}— type-specific schema fields (~50 keys)- FAQ repeater data, star rating overrides, review counts
Use Tools → Schema Generator or the post editor panel to manage these.
Editor panel meta [pro]
Per-post display overrides (when Show Display Panel In Post Editor is enabled):
Stored in post/comment meta via serialized format when Enable Serialized Data Storage is on. Run Convert to Serialized Format under Maintenance after enabling on upgraded sites.
REST field: votes_info [pro]
When Standard Meta Data is enabled, WordPress core REST responses for posts and comments include:
"votes_info": {
"like_amount": 42,
"dislike_amount": 3,
"likers_ids": [1, 5, 12]
}
Available on GET /wp-json/wp/v2/posts/{id} and GET /wp-json/wp/v2/comments/{id} when meta is enabled for that type.
Options stored outside backup scope
| Option | Purpose |
|---|---|
wp_ulike_settings | Settings panel (included in backup) |
wp_ulike_customize | Customizer (included in backup) |
wp_ulike_pro_display_rules | Display Automation (included via extensions) |
wp_ulike_rest_api_settings | REST config (included via extensions) |
wp_ulike_rest_api_keys | Bearer tokens (not in backup) |
wp_ulike_pro_license_key | License (not in backup) |
wp_ulike_use_inline_custom_css | CSS delivery mode |
Maintenance impact
| Tool action | Affects |
|---|---|
Delete all logs | Vote tables only — run Sync Counters after |
Sync counter values | Rebuilds meta from logs |
Delete view records | {prefix}ulike_views |
GDPR Remove Logs | User vote rows across all content types |
See Maintenance Tools and GDPR tool.
Related: Backup and Restore · Developer Functions
Related articles
Continue with these guides
Did this article help?
Pick how you feel, add a note if you want, then hit Send. It takes two seconds and helps us improve this guide.