{"id":327808,"date":"2026-07-03T02:36:58","date_gmt":"2026-07-03T02:36:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/tracksight-order-tracking-by-ympruve\/"},"modified":"2026-07-03T02:36:24","modified_gmt":"2026-07-03T02:36:24","slug":"ympruve-order-tracking","status":"publish","type":"plugin","link":"https:\/\/ast.wordpress.org\/plugins\/ympruve-order-tracking\/","author":23510342,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.3.2","stable_tag":"1.3.2","tested":"7.0","requires":"6.6","requires_php":"8.0","requires_plugins":null,"header_name":"Ympruve Order Tracking for WooCommerce","header_author":"Ympruve WP Plugins & Onae Co.","header_description":"Essential order & shipment tracking tools for WooCommerce.","assets_banners_color":"","last_updated":"2026-07-03 02:36:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/ympruve.com\/plugins\/ympruve-order-tracking","header_author_uri":"https:\/\/ympruve.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":28,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.2":{"tag":"1.3.2","author":"onae","date":"2026-07-03 02:36:24"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.2"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Ympruve Order Tracking dashboard and quick actions.","2":"Orders table with local tracking editing.","3":"Custom statuses manager.","4":"Customer-facing tracking card."}},"plugin_section":[],"plugin_tags":[45369,55977,550,286],"plugin_category":[36,45],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-327808","plugin","type-plugin","status-publish","hentry","plugin_tags-order-tracking","plugin_tags-shipment-tracking","plugin_tags-tracking","plugin_tags-woocommerce","plugin_category-analytics","plugin_category-ecommerce","plugin_committers-onae"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/ympruve-order-tracking.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Ympruve Order Tracking for WooCommerce helps store managers add shipment details and show customers clear delivery progress. Developed by Ympruve and Onae Co.<\/p>\n\n<p>Included features:<\/p>\n\n<ul>\n<li>Manual entry of tracking number and carrier.<\/li>\n<li>Bundled carriers: UPS, USPS, FedEx, and DHL.<\/li>\n<li>Custom carriers: define your own provider name and tracking URL template, with CSV import\/export.<\/li>\n<li>Clickable tracking links on the customer tracking card and in WooCommerce emails.<\/li>\n<li>Custom tracking statuses such as Packed, In Transit, Out for Delivery, and Delivered.<\/li>\n<li>My Account order tracking display.<\/li>\n<li><code>[ympruve_order_tracking]<\/code> shortcode for authorized order tracking display.<\/li>\n<li>Tracking details appended to WooCommerce customer emails.<\/li>\n<li>CSV import for bulk local tracking updates.<\/li>\n<li>Local display customization for the tracking card.<\/li>\n<\/ul>\n\n<p>The plugin stores tracking numbers, carriers, statuses, and display settings locally in WordPress\/WooCommerce. This plugin does not send order, customer, tracking, or analytics data to an external Ympruve service.<\/p>\n\n<p>Additional integrations and hosted services are available from Ympruve.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>The source code for the generated React admin bundle is included in this plugin package under the <code>\/src<\/code> directory. It is built with @wordpress\/scripts (webpack), and uses WordPress's bundled React (wp-element) rather than bundling its own copy.<\/p>\n\n<p>To rebuild the generated assets:<\/p>\n\n<ol>\n<li>Run <code>npm install<\/code><\/li>\n<li>Run <code>npm run build<\/code><\/li>\n<\/ol>\n\n<p>The generated output is written to <code>\/assets\/react\/<\/code> (admin.js, admin.css, and admin.asset.php).<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install the ZIP from Plugins &gt; Add New.<\/li>\n<li>Activate <strong>Ympruve Order Tracking for WooCommerce<\/strong>.<\/li>\n<li>Make sure WooCommerce is active.<\/li>\n<li>Go to <strong>Ympruve Tracking<\/strong> in the admin menu.<\/li>\n<li>Add tracking details from the Ympruve Orders page or directly on WooCommerce order edit screens.<\/li>\n<li>Use <code>[ympruve_order_tracking order_id=\"123\"]<\/code> only on pages where the current customer is authorized to view that order.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20woocommerce%3F\"><h3>Does this plugin require WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. The plugin shows an admin notice and avoids loading WooCommerce-specific functionality if WooCommerce is inactive.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20support%20woocommerce%20hpos%3F\"><h3>Does this plugin support WooCommerce HPOS?<\/h3><\/dt>\n<dd><p>Yes. Ympruve Order Tracking declares HPOS compatibility and uses WooCommerce order APIs for order tracking metadata.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20send%20data%20to%20ympruve%3F\"><h3>Does this plugin send data to Ympruve?<\/h3><\/dt>\n<dd><p>No. Tracking numbers, carrier data, statuses, email settings, and customization settings are stored locally in WordPress\/WooCommerce.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20tracking%20to%20a%20custom%20page%3F\"><h3>How do I add tracking to a custom page?<\/h3><\/dt>\n<dd><p>Use <code>[ympruve_order_tracking order_id=\"123\"]<\/code>. The output is shown only to users who can manage WooCommerce or to the customer who owns the order.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.2<\/h4>\n\n<p>Plugin Check compliance fix.<\/p>\n\n<ul>\n<li>Housekeeping: Moved the translator comment for the CSV import summary message directly above the <code>__()<\/code> call so Plugin Check recognizes it (the placeholder string is unchanged).<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<p>Compliance and refinement fixes from early testing.<\/p>\n\n<ul>\n<li>Fixed: In Custom Statuses, saving a new or edited status now applies immediately \u2014 no second page-level \"Save Changes\" click needed.<\/li>\n<li>Improved: The dashboard date range now reads \"Last 90 days\" (was \"3 months\"), consistent with the 30- and 60-day options, and each KPI tile now explains exactly what it measures.<\/li>\n<li>Housekeeping: Plugin Check (PCP) compliance \u2014 carrier CSV import\/export now uses WP_Filesystem instead of direct file operations, translator comments were added for all placeholder strings, <code>str_getcsv()<\/code> is called with explicit arguments for PHP 8.4, and uninstall database cleanup is annotated.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<p>Refinements from early testing.<\/p>\n\n<ul>\n<li>New: Dashboard date-range selector \u2014 view metrics over the last 30 days, 60 days, or 3 months. All KPI tiles now respect the selected window.<\/li>\n<li>New: The Custom Carriers screen now lists the built-in carriers (UPS, USPS, FedEx, DHL) alongside your own.<\/li>\n<li>Improved: In the order tracking editor, Status is now a dropdown of your custom statuses plus the core WooCommerce statuses, instead of a free-text field.<\/li>\n<li>Improved: Restored the \"Shortcode Tips\" panel on the Customization screen (auto-detect on My Account pages, and per-order usage).<\/li>\n<li>Changed: The admin menu is now labelled \"Order Tracking\" with the location icon.<\/li>\n<li>Fixed: The admin header logo refreshes immediately when the logo image is replaced (cache-busted by file modification time).<\/li>\n<li>Fixed: Spacing between the cards on the Custom Carriers screen.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<p>Carrier expansion \u2014 define your own carriers and surface tracking links everywhere.<\/p>\n\n<ul>\n<li>New: Custom Carriers screen (Ympruve Tracking \u2192 Custom Carriers) to add, edit, and delete carriers we don't bundle \u2014 a provider name plus a tracking URL template containing a single <code>%s<\/code> placeholder.<\/li>\n<li>New: Custom carriers merge into the same carrier source as the bundled ones, so they appear automatically in the order carrier dropdown, the customer tracking page, and tracking emails \u2014 no extra setup.<\/li>\n<li>New: CSV import and export for custom carriers (columns: Provider Name, Tracking URL). Import tolerates an optional header row, validates and sanitizes every row, de-duplicates against existing and bundled carriers, skips invalid rows instead of aborting, and reports a per-row summary.<\/li>\n<li>New: Clickable \"Track Your Package\" links on the customer tracking card and in WooCommerce emails (HTML button and a plain-text link), for both bundled and custom carriers.<\/li>\n<li>Security: tracking URLs are assembled at output time with <code>rawurlencode()<\/code> on the tracking number and <code>esc_url()<\/code> on the result; URL templates are validated for an http(s) scheme and exactly one <code>%s<\/code> placeholder before being stored.<\/li>\n<li>Cleanup: custom carriers option is removed on uninstall.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<p>Admin rebuilt as a fully source-backed React app.<\/p>\n\n<ul>\n<li>Improved: The admin interface is now built from human-readable source (shipped under <code>\/src<\/code>) with @wordpress\/scripts, replacing the previous minified, source-less bundle.<\/li>\n<li>Improved: Uses WordPress's bundled React (wp-element), substantially reducing the admin bundle size.<\/li>\n<li>Improved: Dashboard, Orders, Custom Statuses, Emails, Customization, and CSV Import screens reviewed and polished.<\/li>\n<li>New: JavaScript string translations enabled (<code>wp_set_script_translations<\/code>) and RTL stylesheet support for the admin app.<\/li>\n<li>Compatibility: now requires WordPress 6.6 or newer (for the React JSX runtime).<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<p>Identity alignment and platform compatibility.<\/p>\n\n<ul>\n<li>Changed: Rebranded to \"Ympruve Order Tracking for WooCommerce\"; the admin menu is now \"Ympruve Tracking\".<\/li>\n<li>Changed: Text domain is now <code>ympruve-order-tracking<\/code>; bundled <code>languages\/ympruve-order-tracking.pot<\/code> translation template.<\/li>\n<li>New: <code>[ympruve_order_tracking]<\/code> shortcode. The previous <code>[tracksight_tracking]<\/code> continues to work as a backward-compatibility alias.<\/li>\n<li>New: Declared WooCommerce HPOS (High-Performance Order Storage) compatibility.<\/li>\n<li>Fixed: Repointed plugin and product links to the canonical URL.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<p>Polish and WordPress.org guideline compliance after the first uploads.<\/p>\n\n<ul>\n<li>Removed: In-dashboard promotional upsell call-to-actions from the order-edit metabox and admin screens.<\/li>\n<li>Changed: The \"Upgrade\" menu item now links to the product page instead of opening an in-dashboard sales screen.<\/li>\n<li>Improved: Moved inline styles, scripts, and event handlers from the order metabox into properly enqueued asset files.<\/li>\n<li>Housekeeping: General cleanup for WordPress.org review compliance.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial Ympruve Order Tracking for WooCommerce release.<\/li>\n<li>Local WooCommerce order tracking fields.<\/li>\n<li>Customer-facing tracking card and My Account integration.<\/li>\n<li>CSV import for local tracking updates.<\/li>\n<li>Source-backed React admin bundle.<\/li>\n<\/ul>","raw_excerpt":"Ympruve Order Tracking adds local order and shipment tracking tools to WooCommerce.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/327808","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=327808"}],"author":[{"embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/onae"}],"wp:attachment":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=327808"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=327808"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=327808"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=327808"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=327808"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=327808"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}