コード例 #1
0
ファイル: functions.php プロジェクト: wordimpress/give
/**
 * Returns a list of all enabled gateways.
 *
 * @since 1.0
 * @return array $gateway_list All the available gateways
 */
function give_get_enabled_payment_gateways()
{
    $gateways = give_get_payment_gateways();
    $enabled = isset($_POST['gateways']) ? $_POST['gateways'] : give_get_option('gateways');
    $gateway_list = array();
    foreach ($gateways as $key => $gateway) {
        if (isset($enabled[$key]) && $enabled[$key] == 1) {
            $gateway_list[$key] = $gateway;
        }
    }
    // Set order of payment gateway in list.
    $gateway_list = give_get_ordered_payment_gateways($gateway_list);
    return apply_filters('give_enabled_payment_gateways', $gateway_list);
}
コード例 #2
0
/**
 * Gateways Callback
 *
 * Renders gateways fields.
 *
 * @since 1.0
 *
 * @param $field_object
 * @param $escaped_value
 * @param $object_id
 * @param $object_type
 * @param $field_type_object
 *
 * @return void
 */
function give_enabled_gateways_callback($field_object, $escaped_value, $object_id, $object_type, $field_type_object)
{
    $id = $field_type_object->field->args['id'];
    $field_description = $field_type_object->field->args['desc'];
    $gateways = give_get_ordered_payment_gateways(give_get_payment_gateways());
    echo '<ul class="cmb2-checkbox-list cmb2-list">';
    foreach ($gateways as $key => $option) {
        if (is_array($escaped_value) && array_key_exists($key, $escaped_value)) {
            $enabled = '1';
        } else {
            $enabled = null;
        }
        echo '<li><span class="give-drag-handle"><span class="dashicons dashicons-menu"></span></span><input name="' . $id . '[' . $key . ']" id="' . $id . '[' . $key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
        echo '<label for="' . $id . '[' . $key . ']">' . $option['admin_label'] . '</label></li>';
    }
    echo '</ul>';
    if ($field_description) {
        echo '<p class="cmb2-metabox-description">' . $field_description . '</p>';
    }
}