콘텐츠로 바로가기
WordPress.org

한국어

  • 테마
  • 플러그인
  • 소식
    • 문서
    • 포럼
  • About
    • WordPress 6.9
    • 워드프레스 6.8
    • 워드프레스와 40% 웹을 위한 여정
    • 워드프레스 번역 핸드북
  • 워드프레스 한국팀
  • 워드프레스 받기
워드프레스 받기
WordPress.org

Plugin Directory

Post Meta Editor and Cleaner by RotiStudio

  • 플러그인 제출하기
  • 내 즐겨찾기
  • 로그인
  • 플러그인 제출하기
  • 내 즐겨찾기
  • 로그인

Post Meta Editor and Cleaner by RotiStudio

작성자: Tamas Rottenbacher
다운로드
  • 세부사항
  • 평가
  • 설치
  • 개발
지원

설명

Post Meta bulk editor to delete unused data, overwrite values, run search and replace, and clean your database directly from the admin panel.

Hungarian: Magyar nyelvű bővítmény leírás

Why use this plugin?

Over time, WordPress sites accumulate post meta data from plugins, themes, and page builders. When you switch or remove plugins, their meta often stays in the database – bloating tables, slowing queries, and making backups larger. Post Meta Editor and Cleaner gives you direct control over this data.

Key benefits

  • Database optimization – Remove orphaned meta from deleted plugins to reduce database size and improve performance.
  • Source identification – See which plugin or theme created each meta key. The built-in source map recognizes 50+ popular plugins (WooCommerce, Yoast, Rank Math, Elementor, Jetpack, WPML, and many more).
  • Table search, filters and sorting – Advanced search across meta key, post type and field content (including serialized fragments); column filters for Meta Key, Source and Post Type; sort by Meta Key, Source, Count or Size.
  • Bulk delete – Delete more meta keys at once. Adjust process speed to avoid timeouts on large sites.
  • Search and replace – Update URLs, domain names, or text across all posts. Works with serialized data, including double-serialized values – both array values and array keys can be updated. Values containing PHP objects are skipped for safety.
  • Flexible deletion – Delete the entire meta key and its values, or clear values only while keeping the key structure.
  • Safe editing – Overwrite meta values in bulk, or perform targeted search-and-replace. Batches are resumable after connection errors, concurrent operations on the same meta key are blocked server-side, and any database error stops the operation with a clear message. Ideal for migrations, domain changes, or fixing incorrect product data.
  • Large-site friendly – On catalogs with many products the overview is not scanned automatically. You start with Read data when ready; progress shows percentage and item counts; selected rows can be refreshed without rebuilding the whole index.

What you can do

  • Browse the post meta overview with search, column filters and sortable columns (including Size in MB).
  • Clean up after removing plugins or themes.
  • Migrate a site and update old URLs in meta fields.
  • Fix WooCommerce product attributes, SEO meta, or custom fields in bulk.
  • Identify and remove unused or duplicate meta keys.
  • Reduce wp_postmeta table size for faster backups and queries.

Important

Before making any changes, create a backup, as modifications and deletions can only be restored from a backup.

More

Do you have other plugins? Yes, check my plugins website: rotistudio.com
Where can we learn more about your work? Check my personal website there: rottenbacher.hu

스크린샷

screenshot-1.jpg - Post meta table view
screenshot-1.jpg – Post meta table view
screenshot-2.jpg - Read data on first load
screenshot-2.jpg – Read data on first load
screenshot-3.jpg - Settings page and clear indexed data
screenshot-3.jpg – Settings page and clear indexed data
screenshot-4.jpg - Help documentation page
screenshot-4.jpg – Help documentation page
screenshot-5.jpg - Post Meta table in the admin
screenshot-5.jpg – Post Meta table in the admin

설치

  1. Upload the plugin folder to your /wp-content/plugins/ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. Go to Dashboard / Tools / Post Meta EAC

FAQ

How can I use it?

Install and activate the plugin, then navigate to the Post Meta EAC menu in your WordPress admin.

Do I need to create a backup before using this plugin?

Yes – always create a full database backup before deleting any post meta data. Deletions are permanent and cannot be undone without a backup.

The operation is slow or seems to be stuck – what should I do?

The plugin processes posts in batches. If the operation is slow or appears to hang, reduce the batch size in the Settings page. Lower the “Process Speed” value (e.g. from 50 to 10–20). This reduces the number of posts processed per request, which lowers the load on your server.

Why does the Post Meta table not load automatically?

On large sites the full overview scan can take several minutes. The table page opens immediately and shows a Read data button so you start the scan when you are ready. Use Refresh all data to rebuild the full index, or the bulk Refresh data action for selected rows only. Settings also has Clear index and require re-read to return to that first-launch state.

Which posts are affected by the operations?

All post types are processed, including revisions. Trashed and auto-draft posts, and orphaned meta rows without an existing post, are excluded from both the table and the operations.

Who can use the plugin?

By default, users with the manage_post_meta_cleanup capability (administrators receive it on plugin activation). Since the plugin exposes and edits post meta of every post type, sites with custom roles can tighten this via the rspmeac_capability filter.

후기

Very good beta version.

parittyako1 2026년 7월 17일 답글 2개
Missing Features 1. Global search (highest priority) Currently the table only lists meta keys. Users cannot quickly search for: meta key plugin name post type sample value A live search box filtering the table instantly would probably become one of the most used features. 2. Advanced filtering Current view only supports pagination. Useful filters would be: Post type Plugin / Source Empty values only Unknown meta keys Only orphaned meta Keys used less than X times Keys used more than X times This would make large WooCommerce databases much easier to clean. 3. Sortable columns Currently everything is alphabetical. Allow sorting by: Meta key Count Plugin Post type Estimated database size 4. Database size column This is probably the biggest missing feature. Instead of only showing: _count = 12,354 show 12,354 rows 34.7 MB 5. Last modified information Show: newest post oldest post last modified Which posts use this key? Very valuable. Example: Used on ✓ Products (18,322) ✓ Orders (54,123) ✓ Pages (16) Then View posts could open the actual post list.********Performance Improvements 1. Lazy loading Currently the dashboard loads every meta key, then paginates in PHP. 2. Cache source lookup Current implementation loops through every prefix until a match is found. foreach(prefixes) for every row. Instead cache meta_key ↓ plugin during rendering. Minor improvement. 3. Progress bar Instead of Processing… show 34% 4200 / 12344 ETA 12 sec 4. Incremental refresh Current refresh rebuilds the whole dataset. A smarter refresh would update only changed keys. 5. Database indexes analysis Detect missing indexes. Example Your wp_postmeta table has no composite index Recommended: (meta_key, post_id) Could dramatically speed up operations on very large WooCommerce stores.
모든 0 평가 읽기

기여자 & 개발자

“Post Meta Editor and Cleaner by RotiStudio”(은)는 오픈 소스 소프트웨어입니다. 다음의 사람들이 이 플러그인에 기여하였습니다.

기여자
  • Tamas Rottenbacher
  • RotiStudio

“Post Meta Editor and Cleaner by RotiStudio”(이)가 1 개 언어로 번역되었습니다. 기여해 주셔서 번역자님께 감사드립니다.

자국어로 “Post Meta Editor and Cleaner by RotiStudio”(을)를 번역하세요.

개발에 관심이 있으십니까?

코드 탐색하기는, SVN 저장소를 확인하시거나, 개발 기록을 RSS로 구독하세요.

변경이력

1.3.0

  • Improvement: first visit to the Post Meta table no longer runs the expensive overview scan automatically – a Read data button starts it when you are ready (better UX on large WooCommerce sites).
  • Improvement: Settings action to clear the cached index and return to the Read data screen (same as first launch).
  • Improvement: unified progress display for bulk and row actions – Processing: X% (completed / total), updated after each batch from Process speed.
  • Improvement: Refresh all data rebuilds the full overview; bulk Refresh data updates only the selected rows (counts, size, source, sample) without a full page rebuild.
  • Improvement: Edit and Delete merged into one Actions column (icon toggles).
  • Improvement: Size column (MB); Meta Key, Source, Count and Size are sortable (ASC/DESC). Default order remains Meta Key ascending.
  • Improvement: column filters for Meta Key (text search), Source and Post Type (select).
  • Improvement: advanced Search panel – search in meta key, post type and field content (including serialized fragments), with optional meta key / source narrowing.
  • Improvement: language files updated – regenerate or update your .mo translation files (e.g. via Poedit) so new UI strings appear in your language.
  • Performance: overview rebuild uses one grouped SQL scan (counts + sizes) with a rebuild lock; sources are resolved once into the cache; TTL extended; after operations only the affected key is refreshed in the cache.
  • Performance: sample values for the current page use LIMIT 1 per key and are truncated in SQL (no heavy GROUP BY / full LONGTEXT loads).
  • Performance: batch processing uses keyset pagination (post ID cursor) and prefetches affected meta rows in one query per batch.
  • Fix: search & replace no longer corrupts double-serialized meta values – nested serialized strings are unserialized, processed and re-serialized layer by layer, so the stored byte-length prefixes stay valid.
  • Fix: search & replace on names and values aborts the row when a key rename would overwrite another existing key (including numeric-string key casts), instead of silently losing data.
  • Fix: embedded serialized data is unserialized with object instantiation disabled (allowed_classes false) and a nesting depth limit, so crafted payloads cannot trigger object wakeup code or endless recursion; rows containing objects or unreadable serialized data are skipped and reported.
  • Fix: every database write is verified – failed updates or deletes stop the operation with the affected post IDs instead of reporting a false success.
  • Fix: “Delete (value only)” clears each meta row individually by meta ID, so posts storing multiple values under the same key keep their row count instead of collapsing into a single row.
  • Fix: a per-meta-key server-side lock rejects concurrent operations started from another tab or by another admin.
  • Fix: interrupted operations are safe to retry – the server stores a checkpoint per operation, failed requests are retried automatically and already processed rows are never replayed (no more double replacements).
  • Fix: the Count column counts posts (distinct), not meta rows, matching the Help page description.
  • Fix: the sample value shown in the table now excludes trashed, auto-draft and orphaned meta rows, consistently with the counts.
  • Fix: the admin page no longer fatals when the PHP mbstring extension is missing.
  • Fix: meta keys named like “null”, “true” or JSON literals no longer break the row actions (verbatim data attribute reads).
  • Improvement: settings are registered via the WordPress Settings API; plugin options are stored without autoload.
  • Improvement: dedicated manage_post_meta_cleanup capability (granted to administrators on activation); customizable via the rspmeac_capability filter.
  • Improvement: uninstall also removes the cached overview transient and leftover operation lock records, with multisite support.
  • Improvement: unified pagination rendering without duplicated element IDs; UI texts clarify that trashed and auto-draft posts are not affected.

1.2.0

  • Fix: meta rows stored on post revisions (e.g. Elementor data) could not be deleted or edited – operations now use the low-level metadata API instead of the post meta wrappers, so they target the exact rows shown in the table.
  • Fix: “Delete (value only)” could run in an endless loop when the number of affected posts exceeded the batch size.
  • Fix: posts holding multiple rows for the same meta key no longer collapse into a single value during search & replace – rows are updated individually by meta ID.
  • Fix: batch processing uses deterministic ordering (ORDER BY post ID), so no posts are skipped or processed twice.
  • Fix: values containing backslashes are no longer corrupted on save; meta keys and values with HTML or percent-encoded characters are now matched correctly.
  • Improvement: the batch continuation offset is now calculated server-side.
  • Performance: the meta overview table is cached in a transient (auto-invalidated after every operation) and a “Refresh data” button was added.
  • Performance: deterministic sample value query compatible with ONLY_FULL_GROUP_BY SQL mode.
  • Improvement: unified process speed default (50), canonical admin URLs under Tools, removed dead code.

1.1.0

  • Minor code fix.
  • WordPress 7.0 compatibility check
  • PHP 8.5 compatibility check

1.0.0

  • Initial release.

기초

  • 버전 1.3.0
  • 최근 업데이트: 2주 전
  • 활성화된 설치 10+
  • 워드프레스 버전 5.9 또는 그 이상
  • 다음까지 시험됨: 7.0.2
  • PHP 버전 7.4 또는 그 이상
  • 언어

    English (US) 및 Hungarian.

    자국어로 번역하기

  • 태그:
    cleanupdatabaseeditoroptimizationpost meta
  • 고급 보기

평점

별 5점 만점에 4점.
  • 0/5-별점 후기 별 5개 0
  • 1/4-별점 후기 별 4개 1
  • 0/3-별점 후기 별 3개 0
  • 0/2-별점 후기 별 2개 0
  • 0/1-별점 후기 별 1개 0

Your review

모든 리뷰 보기

기여자

  • Tamas Rottenbacher
  • RotiStudio

지원

할 말 있으신가요? 도움이 필요하신가요?

지원 포럼 보기

기부

이 플러그인이 발전하도록 도우시겠습니까?

이 플러그인에 기부하기

  • 소개
  • 뉴스
  • 호스팅
  • 개인정보
  • 쇼케이스
  • 테마
  • 플러그인
  • 패턴
  • 배우기
  • 지원
  • 개발자 도구
  • WordPress.tv ↗
  • 참여하기
  • 이벤트
  • 기부하기 ↗
  • 미래를 위한 5가지
  • WordPress.com ↗
  • Matt ↗
  • bbPress ↗
  • BuddyPress ↗
WordPress.org
WordPress.org

한국어

  • X(이전 트위터) 계정 방문하기
  • 블루스카이 계정 방문하기
  • 마스토돈 계정 방문하기
  • 스레드 계정 방문하기
  • 페이스북 페이지 방문하기
  • 인스타그램 계정 방문하기
  • LinkedIn 계정 방문하기
  • 틱톡 계정 방문하기
  • 유튜브 채널 방문하기
  • 텀블러 계정 방문하기
코드는 詩다
The WordPress® trademark is the intellectual property of the WordPress Foundation.