{"id":292950,"date":"2026-04-03T06:46:46","date_gmt":"2026-04-03T06:46:46","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/polymarket-top-wallets-leaderboard\/"},"modified":"2026-04-24T02:01:29","modified_gmt":"2026-04-24T02:01:29","slug":"bounmee-wallet-leaderboard","status":"publish","type":"plugin","link":"https:\/\/ve.wordpress.org\/plugins\/bounmee-wallet-leaderboard\/","author":23470208,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"3.6.4","stable_tag":"3.6.4","tested":"6.9.4","requires":"5.5","requires_php":"7.4","requires_plugins":null,"header_name":"Bounmee Wallet Leaderboard","header_author":"bounmee","header_description":"Embed a live Polymarket top-wallet leaderboard on any page with one shortcode. Server-side API proxy, White & Navy Blue themes, 30D\/7D period toggle, category filters, Wallet of the Day, wallet compare tool, and optional CopyTrade button.","assets_banners_color":"","last_updated":"2026-04-24 02:01:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/bounmee-wallet-leaderboard\/","header_author_uri":"https:\/\/telegramtrading.net","rating":0,"author_block_rating":0,"active_installs":0,"downloads":188,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"3.6.2":{"tag":"3.6.2","author":"bounmee","date":"2026-04-03 06:45:19"},"3.6.3":{"tag":"3.6.3","author":"bounmee","date":"2026-04-06 05:57:32"},"3.6.4":{"tag":"3.6.4","author":"bounmee","date":"2026-04-24 02:01:29"}},"upgrade_notice":{"3.6.1":"<p>Fixes mobile &quot;Share on X&quot; button in Wallet of the Day, trims unused API categories, and renames the plugin. No breaking changes \u2014 existing shortcodes continue to work unchanged.<\/p>","3.6.0":"<p>Replaces all inline script\/style tags with proper WordPress enqueue API calls. Required for WP.org compliance. No breaking changes.<\/p>","3.3.0":"<p>Adds White\/Navy Blue theme selector, 30D\/7D period toggle, and always-live data. Recommended upgrade for all users.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3497988,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["3.6.2","3.6.3","3.6.4"],"block_files":[],"assets_screenshots":{"screenshot-2.png":{"filename":"screenshot-2.png","revision":3497988,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3497988,"resolution":"3","location":"assets","locale":""}},"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[5494,259336,39299,22198,77204],"plugin_category":[],"plugin_contributors":[259337],"plugin_business_model":[],"class_list":["post-292950","plugin","type-plugin","status-publish","hentry","plugin_tags-leaderboard","plugin_tags-polymarket","plugin_tags-prediction-markets","plugin_tags-trading","plugin_tags-wallets","plugin_contributors-bounmee","plugin_committers-bounmee"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/bounmee-wallet-leaderboard\/assets\/icon-256x256.png?rev=3497988","icon_2x":"https:\/\/ps.w.org\/bounmee-wallet-leaderboard\/assets\/icon-256x256.png?rev=3497988","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/bounmee-wallet-leaderboard\/assets\/screenshot-2.png?rev=3497988","caption":""},{"src":"https:\/\/ps.w.org\/bounmee-wallet-leaderboard\/assets\/screenshot-3.png?rev=3497988","caption":""}],"raw_content":"<!--section=description-->\n<p><strong>Bounmee Wallet Leaderboard<\/strong> fetches the top 10 Polymarket traders from the official Polymarket Data API and renders them in a clean, responsive widget using a single shortcode.<\/p>\n\n<p>All API requests are proxied through WordPress (admin-ajax.php), so there are no CORS issues regardless of your server environment. Data is always fetched fresh \u2014 no caching \u2014 so visitors always see current rankings.<\/p>\n\n<p><strong>Features:<\/strong><\/p>\n\n<ul>\n<li>Live top-10 leaderboard ranked by PNL<\/li>\n<li><strong>30D \/ 7D period toggle<\/strong> \u2014 switch between 30-day and 7-day best wallets on the widget, no page reload<\/li>\n<li><strong>Two themes<\/strong> \u2014 White (default, clean light design) and Navy Blue (dark gradient background, full contrast adaptation)<\/li>\n<li>Category filters: All, Politics, Crypto, Sports, Culture, Tech, Finance, Macro<\/li>\n<li>Wallet of the Day spotlight card with auto-generated performance analysis <em>(optional)<\/em><\/li>\n<li>Side-by-side wallet compare tool with PNL, volume, and efficiency bars <em>(optional)<\/em><\/li>\n<li>Optional CopyTrade button per row linking to an external copy-trading service <em>(opt-in, off by default)<\/em><\/li>\n<li>Server-side AJAX proxy \u2014 no CORS issues on any host<\/li>\n<li>No caching \u2014 every request fetches live data from the Polymarket API<\/li>\n<li>Zero first-paint spinner \u2014 data seeded server-side on page load<\/li>\n<li>Mobile responsive: card layout on small screens, table on desktop<\/li>\n<li>Fully theme-isolated CSS \u2014 scoped under a unique ID, immune to theme interference in both directions<\/li>\n<li>No external JavaScript dependencies \u2014 pure vanilla JS, no jQuery required<\/li>\n<\/ul>\n\n<p><strong>Shortcode:<\/strong><\/p>\n\n<pre><code>[polymarket_leaderboard]\n<\/code><\/pre>\n\n<p>Optional default category:<\/p>\n\n<pre><code>[polymarket_leaderboard category=\"CRYPTO\"]\n<\/code><\/pre>\n\n<p>Valid values: <code>OVERALL<\/code> <code>POLITICS<\/code> <code>SPORTS<\/code> <code>CRYPTO<\/code> <code>CULTURE<\/code> <code>ECONOMICS<\/code> <code>TECH<\/code> <code>FINANCE<\/code><\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the <strong>Polymarket Data API<\/strong> to retrieve public leaderboard data.<\/p>\n\n<ul>\n<li><strong>Service:<\/strong> Polymarket Data API<\/li>\n<li><strong>Endpoint:<\/strong> <code>https:\/\/data-api.polymarket.com\/v1\/leaderboard<\/code><\/li>\n<li><strong>When it is called:<\/strong> On every page load where <code>[polymarket_leaderboard]<\/code> is placed (server-side seed), and on every category filter click, period toggle, or Refresh button click (client-side via AJAX proxy)<\/li>\n<li><strong>Data sent:<\/strong> Query parameters only \u2014 leaderboard category, time period (MONTH or WEEK), result limit, and sort order. No user data of any kind is transmitted.<\/li>\n<li><strong>Data received:<\/strong> Public on-chain wallet rankings including rank, wallet address, username (if set), PNL, volume, profile image URL, and X username (if set). All data is public on-chain information.<\/li>\n<li><strong>Polymarket Terms of Service:<\/strong> https:\/\/polymarket.com\/tos<\/li>\n<li><strong>Polymarket Privacy Policy:<\/strong> https:\/\/polymarket.com\/privacy-policy<\/li>\n<\/ul>\n\n<p>This plugin also loads fonts from <strong>Google Fonts<\/strong> on pages that use the shortcode:<\/p>\n\n<ul>\n<li><strong>Service:<\/strong> Google Fonts CDN<\/li>\n<li><strong>URL:<\/strong> <code>https:\/\/fonts.googleapis.com<\/code><\/li>\n<li><strong>Google Privacy Policy:<\/strong> https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>This plugin does not collect, store, or transmit any personal data about site visitors.<\/p>\n\n<p>On page load and on user interactions (filter changes, period toggle, refresh), the plugin makes requests to the public Polymarket Data API. These requests contain only query parameters (category, time period, limit) \u2014 no user information is included.<\/p>\n\n<p>No analytics, tracking pixels, or third-party beacons are included.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>bounmee-wallet-leaderboard<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Activate the plugin via <strong>Plugins \u2192 Installed Plugins<\/strong>.<\/li>\n<li>Add <code>[polymarket_leaderboard]<\/code> to any page or post.<\/li>\n<li>Visit <strong>Settings \u2192 Polymarket LB<\/strong> to choose your theme, enable optional features.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20slow%20down%20my%20site%3F\"><h3>Does this plugin slow down my site?<\/h3><\/dt>\n<dd><p>No. Scripts and API calls only run on pages where <code>[polymarket_leaderboard]<\/code> is placed. Nothing is injected globally.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20polymarket%20api%20is%20down%3F\"><h3>What happens if the Polymarket API is down?<\/h3><\/dt>\n<dd><p>The widget falls back to anonymised demo data automatically. Clicking Refresh or switching a filter will retry the live API.<\/p><\/dd>\n<dt id=\"can%20i%20set%20a%20default%20category%3F\"><h3>Can I set a default category?<\/h3><\/dt>\n<dd><p>Yes. Use <code>[polymarket_leaderboard category=\"POLITICS\"]<\/code> to pre-select a category on load. Valid values: OVERALL, POLITICS, SPORTS, CRYPTO, CULTURE, ECONOMICS, TECH, FINANCE.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20caching%20plugins%3F\"><h3>Does it work with page caching plugins?<\/h3><\/dt>\n<dd><p>Yes. The initial seed data is rendered server-side and AJAX calls happen client-side after page load, so full-page caching is fully compatible. The Refresh button and period toggle always hit the live API.<\/p><\/dd>\n<dt id=\"will%20the%20widget%20break%20my%20theme%27s%20styles%3F\"><h3>Will the widget break my theme's styles?<\/h3><\/dt>\n<dd><p>No. All widget CSS is scoped under a unique ID with high specificity. It cannot affect your theme, and your theme cannot override the widget styles.<\/p><\/dd>\n<dt id=\"what%20is%20the%20copytrade%20button%3F\"><h3>What is the CopyTrade button?<\/h3><\/dt>\n<dd><p>An optional button that appears on each leaderboard row when enabled in Settings. It links to an external copy-trading service of your choice. Disabled by default \u2014 you must consciously enable it and set your URL in Settings. This is an affiliate\/referral feature \u2014 full disclosure is shown in the setup panel per WP.org guideline 10.<\/p><\/dd>\n<dt id=\"what%20is%20the%2030d%20%2F%207d%20toggle%3F\"><h3>What is the 30D \/ 7D toggle?<\/h3><\/dt>\n<dd><p>A pill toggle in the widget controls bar that switches the leaderboard between 30-day (MONTH) and 7-day (WEEK) best wallets by calling the Polymarket API with the corresponding <code>timePeriod<\/code> parameter. The leaderboard, mobile cards, Wallet of the Day, and compare tool all update accordingly.<\/p><\/dd>\n<dt id=\"how%20do%20i%20change%20the%20theme%3F\"><h3>How do I change the theme?<\/h3><\/dt>\n<dd><p>Go to <strong>Settings \u2192 Polymarket LB<\/strong> and choose White or Navy Blue under Widget Theme. Save \u2014 the change applies immediately to all shortcode instances.<\/p><\/dd>\n<dt id=\"what%20data%20does%20this%20plugin%20collect%3F\"><h3>What data does this plugin collect?<\/h3><\/dt>\n<dd><p>None. The plugin only fetches public data from the Polymarket API. No visitor data is collected or transmitted.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>3.6.4<\/h4>\n\n<ul>\n<li>New: 24H period toggle \u2014 adds a \"\ud83d\udd25 24H\" button alongside 30D and 7D, fetching <code>timePeriod=DAY<\/code> from the Polymarket API to surface wallets that are hot right now rather than long-term PNL leaders<\/li>\n<li>New: Period-aware badge copy \u2014 the #1 wallet why-badge shows \"\ud83d\udd25 Hottest wallet right now\" in 24H mode instead of the standard monthly\/weekly label<\/li>\n<li>New: Subtitle label updates to \"last 24-hour PNL\" when 24H is active, consistent with 30D\/7D behaviour<\/li>\n<li>Fix: PHP period whitelist now includes <code>DAY<\/code> so AJAX proxy correctly passes the new period to the Polymarket API<\/li>\n<\/ul>\n\n<h4>3.6.3<\/h4>\n\n<ul>\n<li>Fix: <code>shortcode_atts<\/code> filter tag was <code>bounwale_leaderboard<\/code> instead of <code>polymarket_leaderboard<\/code> \u2014 caused <code>[polymarket_leaderboard]<\/code> shortcode to not work correctly on sites using shortcode attribute filters<\/li>\n<li>Fix: <code>wp_register_script\/style<\/code> called with <code>false<\/code> as src (invalid) \u2014 changed to empty string <code>''<\/code>, the correct WordPress approach for inline-only asset handles<\/li>\n<li>Fix: Table loading row used <code>colspan=\"6\"<\/code> on a 5-column table \u2014 corrected to <code>colspan=\"5\"<\/code> (affected both the PHP seed markup and the JS loading state)<\/li>\n<li>Fix: <code>bounwale_maybe_redirect_setup<\/code> on <code>admin_init<\/code> now guards with <code>is_admin()<\/code> to prevent redirect loops on non-admin requests<\/li>\n<li>Fix: <code>admin_enqueue_scripts<\/code> hook check now uses exact match <code>settings_page_bounwale-leaderboard<\/code> instead of <code>strpos<\/code> \u2014 prevents accidental asset loading on unrelated admin pages; also fixes the <code>false<\/code>-src registers for admin handles<\/li>\n<li>Fix: <code>uninstall.php<\/code> was deleting <code>ttg_options<\/code> \/ <code>ttg_setup_redirect<\/code> (legacy keys from an old version) instead of <code>bounwale_options<\/code> \/ <code>bounwale_setup_redirect<\/code> \u2014 plugin options were never cleaned up on deletion<\/li>\n<li>Fix: readme.txt 3.6.1 changelog entry was self-contradictory (listed two conflicting rename targets); corrected to reflect final slug <code>bounmee-wallet-leaderboard<\/code><\/li>\n<li>Fix: README.md Plugin URI pointed to old slug <code>prediction-market-wallet-leaderboard<\/code>; updated to <code>bounmee-wallet-leaderboard<\/code><\/li>\n<\/ul>\n\n<h4>3.6.2<\/h4>\n\n<ul>\n<li>Plugin officially renamed to \"Bounmee Wallet Leaderboard\"; slug <code>bounmee-wallet-leaderboard<\/code><\/li>\n<li>Fix: Layout never scrolls horizontally \u2014 root container enforces <code>overflow-x:hidden<\/code>; table uses <code>table-layout:fixed<\/code> instead of fixed <code>min-width<\/code><\/li>\n<li>Fix: Responsive breakpoints extended \u2014 new 900px, 360px breakpoints ensure widget fills its container cleanly at all screen sizes without breaking or overflowing<\/li>\n<li>Fix: Mobile card actions stack to single column on phones \u2264480px for better tap targets<\/li>\n<li>Fix: Filter buttons, WOTD stats, and card padding tightened on very small screens (\u2264360px)<\/li>\n<\/ul>\n\n<h4>3.6.1<\/h4>\n\n<ul>\n<li>Fix: Wallet of the Day \"Share on X\" button on mobile now correctly populated with wallet stats (was always <code>href=\"#\"<\/code>)<\/li>\n<li>Fix: PHP category whitelist trimmed to match UI \u2014 removed unused <code>MENTIONS<\/code> and <code>WEATHER<\/code> values<\/li>\n<li>Plugin renamed to \"Bounmee Wallet Leaderboard\"; slug updated to <code>bounmee-wallet-leaderboard<\/code><\/li>\n<\/ul>\n\n<h4>3.6.0<\/h4>\n\n<ul>\n<li>Fix: All inline <code>&lt;script&gt;<\/code> and <code>&lt;style&gt;<\/code> tags replaced with proper WordPress enqueue API (<code>wp_register_script\/style<\/code>, <code>wp_add_inline_script\/style<\/code>) \u2014 required for WP.org compliance<\/li>\n<li>Fix: Admin JS registered under its own handle; admin assets hooked via <code>admin_enqueue_scripts<\/code> with page-scoped check<\/li>\n<\/ul>\n\n<h4>3.5.0 \u2014 3.5.1<\/h4>\n\n<ul>\n<li>Fix: Controls row (live dot + 30D\/7D + Refresh) centred on both themes, desktop and mobile<\/li>\n<li>Fix: \"Compare Any Two Wallets\" heading centred on both themes<\/li>\n<\/ul>\n\n<h4>3.4.1 \u2014 3.4.9<\/h4>\n\n<ul>\n<li>Fix: Table row colour bleed eliminated; text sizes increased for readability<\/li>\n<li>Fix: 7D volume fallback chain (<code>vol \u2192 volume \u2192 tradedAmount \u2192 notional<\/code>)<\/li>\n<li>Fix: Share on X split into desktop and mobile copies, both updated by JS<\/li>\n<li>Fix: Navy Blue theme rendered as rounded card with padding and shadow<\/li>\n<li>Fix: Compare accordion alignment and text stacking on all themes<\/li>\n<\/ul>\n\n<h4>3.3.0<\/h4>\n\n<ul>\n<li>New: White \/ Navy Blue theme selector in Settings<\/li>\n<li>New: 30D \/ 7D period toggle \u2014 switches <code>timePeriod<\/code> on the Polymarket API; all UI elements reflect the selected period<\/li>\n<li>Removed all transient and sessionStorage caching \u2014 always-live data<\/li>\n<li>Fixed: WCAG AA contrast on PNL green, rank badges, and wallet addresses in both themes<\/li>\n<\/ul>\n\n<h4>3.2.0 \u2014 3.2.3<\/h4>\n\n<ul>\n<li>Added first-run setup wizard and Settings page with opt-in feature controls<\/li>\n<li>All external links off by default (WP.org guideline 10)<\/li>\n<li>Full CSS isolation scoped under <code>#ttg-lb-root-wp<\/code><\/li>\n<\/ul>\n\n<h4>3.0.0 \u2014 3.1.0<\/h4>\n\n<ul>\n<li>Initial release: server-side AJAX proxy, category filters, Wallet of the Day, compare tool, mobile card layout, demo data fallback<\/li>\n<li>Google Fonts loaded via <code>wp_enqueue_style<\/code>; <code>uninstall.php<\/code> added<\/li>\n<\/ul>","raw_excerpt":"Embed a live Polymarket top-wallet leaderboard on any page. Always-fresh API data, 30D\/7D toggle, White &amp; Navy Blue themes, category filters.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/292950","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=292950"}],"author":[{"embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bounmee"}],"wp:attachment":[{"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=292950"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=292950"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=292950"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=292950"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=292950"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ve.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=292950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}