| 开发者 |
vanquish83
freemius |
|---|---|
| 更新时间 | 2026年9月10日 02:35 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
[vanstr_tracking_form].vanstr_set_tracking(), for attaching tracking from your own code when your warehouse software or carrier plugin books the parcel./wp-content/plugins/vanquish-shipping-tracking-for-woocommerce directory, or install the plugin through the WordPress plugins screen.Yes. The free version links to the carriers' tracking pages and needs no external account or API key. In the premium version, the in-site timeline is the only feature that uses a tracking service — with your own API key.
Yes. The [vanstr_tracking_form] shortcode puts a small form on any page: the customer enters an order number and the billing email of that order, and gets the tracking of that order back, using the message you configured. Failed attempts are rate limited, so the form cannot be used to fish for order numbers. An optional title attribute adds a heading, as in [vanstr_tracking_form title="Track your order"].
Yes. The checkout features (requested delivery date, delivery estimates on shipping methods, per-product shipping estimates) work in both the block checkout and the classic (shortcode) checkout.
Yes, the plugin is fully compatible with HPOS and with the classic order storage.
No. Your orders keep their tracking: carrier, tracking number and dispatch date are converted the first time each order is loaded, so there is no bulk operation to run. Custom carriers, and the extra shipments and notes if you used them, come across too. Your settings are migrated as well: the tracking messages (including every language, on a WPML or Polylang site) and the order statuses the tracking is shown on. The placeholders are the same in both plugins, so your wording carries over unchanged. Anything that has no equivalent in the new plugin — most of the old options page consisted of workarounds this plugin no longer needs — is simply left behind, and the advanced features have their own settings pages, which you fill in yourself. The migration never overwrites anything you have already configured here. It does, however, clear the old plugin's data as it converts each piece — the custom companies once they have been imported, and each order's old tracking fields once that order has been converted — because that is how it knows not to run twice. Your messages and the order-status setting are left untouched. So nothing is lost, but going back to the old plugin is not clean: it would find its custom companies gone and no tracking on the orders you had opened. If you want a way back, take a database backup before you start.
Yes, with vanstr_set_tracking():
vanstr_set_tracking( $order_id, '1Z999AA10123456784', 'ups', '2026-09-09' );
The arguments are the order (an id or a WC_Order), the tracking number, the carrier, and an optional dispatch date as Y-m-d. For the carrier, use the slug shown in brackets under Shipping Tracking → Shipping companies, or the id of one of your own custom companies. A date in any other format is refused rather than stored in a shape the plugin cannot read back, and omitting it leaves whatever the order already had.
Call it any time after plugins_loaded, and wrap it in function_exists( 'vanstr_set_tracking' ) so your code survives the plugin being deactivated. It returns true when the tracking was written, false when WooCommerce is unavailable or the order does not exist. Each call also leaves an order note, so shipments booked by an integration leave the same timestamped trail as the ones entered by hand.
Yes. Every email is a standard WooCommerce email, so you edit it under WooCommerce → Settings → Emails, exactly like the ones WooCommerce sends itself: subject, heading, extra content, the enable switch and your store's branding. The plugin adds "Order shipped", "Shipment status update" and "Shipment needs attention (admin)" (the last one goes to you, not the customer, and lets you set the recipient).
The tracking block inside those emails comes from the message you write in Shipping Tracking → Messages, where you can use placeholders such as the tracking number, the carrier name, the tracking link and the products carried by that shipment.
On top of that, the two monitoring emails accept placeholders in their Subject, Email heading and Additional content fields: {order_number}, {tracking_number}, {carrier} and {associated_products}, plus {status} on the status update and {issue} on the admin alert. So a subject like Your {carrier} parcel: {status} or an extra line saying This parcel contains: {associated_products} works without touching any template.
They stay. Custom carriers, messages, enabled carriers and — in the premium version — estimate rules, providers and API keys all survive an uninstall and are still there after a reinstall, and the tracking saved on your orders is never touched. If you do want a clean slate, Shipping Tracking → Settings has a "Reset settings" action that clears the configuration on purpose, behind a confirmation. It leaves the tracking on your orders alone.
The plugin ships translation-ready (POT file included). On top of that, if WPML or Polylang is active, the settings pages show one input per language for all the customer-facing text (messages, labels, estimates), so you can translate them without extra tools.
vanstr_set_tracking(), a documented function for attaching tracking to an order from your own code — for shops whose warehouse software or carrier plugin books the parcel. It was already possible by calling an internal class, but that tied an integration to a class name we might refactor one day; this signature is the one that stays. See the FAQ for an example.[vanstr_tracking_form], the shortcode that lets a customer look up their own tracking with an order number and the billing email of that order. The shortcode has been there since the first release and was written down nowhere, so the only way to find it was to read the source.