PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 6.0.3
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v6.0.3
6.0.3 6.0.2 6.0.1 6.0.0 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.7.9.2 5.7.9.1 5.7.8 5.7.9 5.7.6 5.7.7 5.7.5 5.7.4 5.7.3 5.7.2 5.7.1 trunk 5.6.0 5.6.1 All 34 releases
← All changes | integrations/digimember/includes/functions.php +71 -0 5.8.1 → 6.0.3 View file →
@@ -1,0 +1,71 @@
1 +<?php
2 +/**
3 + * Functions
4 + *
5 + * @package AutomatorWP\Digimember\Functions
6 + * @since 1.0.0
7 + */
8 +// Exit if accessed directly
9 +if( !defined( 'ABSPATH' ) ) exit;
10 +
11 +/**
12 + * Options callback for select2 fields assigned to products
13 + *
14 + * @since 1.0.0
15 + *
16 + * @param stdClass $field
17 + *
18 + * @return array
19 + */
20 +function automatorwp_digimember_options_cb_product( $field ) {
21 +
22 + // Setup vars
23 + $value = $field->escaped_value;
24 + $none_value = 'any';
25 + $none_label = __( 'any product', 'automatorwp' );
26 + $options = automatorwp_options_cb_none_option( $field, $none_value, $none_label );
27 +
28 + if( ! empty( $value ) ) {
29 + if( ! is_array( $value ) ) {
30 + $value = array( $value );
31 + }
32 +
33 + foreach( $value as $product_id ) {
34 +
35 + // Skip option none
36 + if( $product_id === $none_value ) {
37 + continue;
38 + }
39 +
40 + $options[$product_id] = automatorwp_digimember_get_product_title( $product_id );
41 + }
42 + }
43 +
44 + return $options;
45 +
46 +}
47 +
48 +/**
49 + * Get the product title
50 + *
51 + * @since 1.0.0
52 + *
53 + * @param int $product_id
54 + *
55 + * @return string|null
56 + */
57 +function automatorwp_digimember_get_product_title( $product_id ) {
58 +
59 + // Empty title if no ID provided
60 + if( absint( $product_id ) === 0 ) {
61 + return '';
62 + }
63 +
64 + global $wpdb;
65 +
66 + return $wpdb->get_var( $wpdb->prepare(
67 + "SELECT p.name FROM {$wpdb->prefix}digimember_product AS p WHERE p.id = %d",
68 + $product_id
69 + ) );
70 +
71 +}