| Server IP : 213.136.93.164 / Your IP : 216.73.216.20 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/ki692510/www/wp-content/plugins/updraftplus/includes/checkout-embed/ |
Upload File : |
# Embed the plugin's checkout page
## To use in a new plugin:
- Include and instantiate `Updraft_Checkout_Embed`
```php
if (!class_exists('Updraft_Checkout_Embed')) include_once (UPDRAFTPLUS_DIR.'/includes/checkout-embed/class-udp-checkout-embed.php');
global $udp_checkout_embed;
$udp_checkout_embed = new Updraft_Checkout_Embed(
'updraftplus'
$data_url,
$load_in_pages
);
```
### Params:
- $plugin_name: (string) Current plugin using the class
- $proructs_data_url: (string) url of the merchand website (eg: https://https://updraftplus.com)
- $load_in_pages: (array) pages on which the script + css will be loaded
### Cache:
The products data is cached and expires after 7 days. To force fetching it, add `udp-force-product-list-refresh=1` to the admin page url
## Using in the admin
- Once the php is setup, you can configure the links / buttons in the admin.
Add `data-embed-checkout="{$url}"` to any link. eg:
```php
global $updraftplus_checkout_embed;
$link_data_attr = $updraftplus_checkout_embed->get_product('updraftpremium') ? 'data-embed-checkout="'.apply_filters('updraftplus_com_link', $updraftplus_checkout_embed->get_product('updraftpremium')).'"' : '';
<a target="_blank" title="Upgrade to Updraft Premium" href="<?php echo apply_filters('updraftplus_com_link', "https://updraftplus.com/shop/updraftplus-premium/");?>" <?php echo $link_data_attr; ?>><?php _e('get it here', 'updraftplus');?></a>
```
- On completion (when the order is complete), the event 'udp/checkout/done' is triggered.
- The event 'udp/checkout/close' is triggered when the user closes the modal, regardless of success.
Use this to do something with the data received:
```javascript
$(document).on('udp/checkout/done', function(event, data, $element) {
// ... do something with data, currently data.email and data.order_number
// $element clicked to open the modal.
});
```