本文整理汇总了PHP中give_get_payment_number函数的典型用法代码示例。如果您正苦于以下问题:PHP give_get_payment_number函数的具体用法?PHP give_get_payment_number怎么用?PHP give_get_payment_number使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了give_get_payment_number函数的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: my_give_google_analytics_event
function my_give_google_analytics_event($payment, $give_receipt_args)
{
if ($give_receipt_args['payment_id']) {
// Use a meta value so we only send the beacon once.
if (get_post_meta($payment->ID, 'give_ga_beacon_sent', true)) {
return;
}
$total = give_get_payment_amount($payment->ID);
?>
<script type="text/javascript">
ga('require', 'ecommerce', 'ecommerce.js');
ga('ecommerce:addTransaction', {
'id': '<?php
echo esc_js(give_get_payment_number($payment->ID));
?>
', // Transaction ID. Required.
'affiliation': '<?php
echo esc_js(get_bloginfo('name'));
?>
', // Affiliation or store name.
'revenue': '<?php
echo esc_js($total);
?>
' // donation amount.
});
ga('ecommerce:send');
</script>
<?php
update_post_meta($payment->ID, 'give_ga_beacon_sent', true);
}
}
开发者ID:WordImpress,项目名称:Give-Snippet-Library,代码行数:35,代码来源:add-google-analytics-ecommerce-tracking.php
示例2: get_data
/**
* Get the Export Data.
*
* @access public
* @since 1.5
* @global object $wpdb Used to query the database using the WordPress database API.
* @return array $data The data for the CSV file.
*/
public function get_data()
{
global $wpdb;
$data = array();
$args = array('number' => 30, 'page' => $this->step, 'status' => $this->status);
if (!empty($this->start) || !empty($this->end)) {
$args['date_query'] = array(array('after' => date('Y-n-d 00:00:00', strtotime($this->start)), 'before' => date('Y-n-d 23:59:59', strtotime($this->end)), 'inclusive' => true));
}
//echo json_encode($args ); exit;
$payments = give_get_payments($args);
if ($payments) {
foreach ($payments as $payment) {
$payment_meta = give_get_payment_meta($payment->ID);
$user_info = give_get_payment_meta_user_info($payment->ID);
$total = give_get_payment_amount($payment->ID);
$user_id = isset($user_info['id']) && $user_info['id'] != -1 ? $user_info['id'] : $user_info['email'];
$products = '';
$skus = '';
if (is_numeric($user_id)) {
$user = get_userdata($user_id);
} else {
$user = false;
}
$data[] = array('id' => $payment->ID, 'seq_id' => give_get_payment_number($payment->ID), 'email' => $payment_meta['email'], 'first' => $user_info['first_name'], 'last' => $user_info['last_name'], 'address1' => isset($user_info['address']['line1']) ? $user_info['address']['line1'] : '', 'address2' => isset($user_info['address']['line2']) ? $user_info['address']['line2'] : '', 'city' => isset($user_info['address']['city']) ? $user_info['address']['city'] : '', 'state' => isset($user_info['address']['state']) ? $user_info['address']['state'] : '', 'country' => isset($user_info['address']['country']) ? $user_info['address']['country'] : '', 'zip' => isset($user_info['address']['zip']) ? $user_info['address']['zip'] : '', 'form_id' => isset($payment_meta['form_id']) ? $payment_meta['form_id'] : '', 'form_name' => isset($payment_meta['form_title']) ? $payment_meta['form_title'] : '', 'skus' => $skus, 'amount' => html_entity_decode(give_format_amount($total)), 'gateway' => give_get_gateway_admin_label(get_post_meta($payment->ID, '_give_payment_gateway', true)), 'trans_id' => give_get_payment_transaction_id($payment->ID), 'key' => $payment_meta['key'], 'date' => $payment->post_date, 'user' => $user ? $user->display_name : __('guest', 'give'), 'status' => give_get_payment_status($payment, true));
}
$data = apply_filters('give_export_get_data', $data);
$data = apply_filters('give_export_get_data_' . $this->export_type, $data);
return $data;
}
return false;
}
示例3: column_default
/**
* This function renders most of the columns in the list table.
*
* @access public
* @since 1.0
*
* @param array $item Contains all the data of the discount code
* @param string $column_name The name of the column
*
* @return string Column Name
*/
public function column_default($item, $column_name)
{
switch ($column_name) {
case 'form':
return '<a href="' . esc_url(add_query_arg('form', $item[$column_name])) . '" >' . get_the_title($item[$column_name]) . '</a>';
case 'user_id':
return '<a href="' . admin_url('edit.php?post_type=give_forms&page=give-payment-history&user=' . (!empty($item['user_id']) ? urlencode($item['user_id']) : give_get_payment_user_email($item['payment_id']))) . '">' . $item['user_name'] . '</a>';
case 'amount':
return give_currency_filter(give_format_amount($item['amount']));
case 'payment_id':
return '<a href="' . admin_url('edit.php?post_type=give_forms&page=give-payment-history&view=view-order-details&id=' . $item['payment_id']) . '">' . give_get_payment_number($item['payment_id']) . '</a>';
default:
return $item[$column_name];
}
}
示例4: column_default
/**
* This function renders most of the columns in the list table.
*
* @access public
* @since 1.0
*
* @param array $item Contains all the data of the discount code
* @param string $column_name The name of the column
*
* @return string Column Name
*/
public function column_default($item, $column_name)
{
$payment = give_get_payment_by('id', $item['payment_id']);
switch ($column_name) {
case 'form':
return '<a href="' . esc_url(add_query_arg('form', $item[$column_name])) . '" >' . get_the_title($item[$column_name]) . '</a>';
case 'user_id':
return '<a href="' . admin_url('edit.php?post_type=give_forms&page=give-payment-history&user=' . (!empty($item['user_id']) ? urlencode($item['user_id']) : give_get_payment_user_email($item['payment_id']))) . '">' . $item['user_name'] . '</a>';
case 'amount':
return give_currency_filter(give_format_amount($item['amount']));
case 'status':
$value = '<div class="give-donation-status status-' . sanitize_title(give_get_payment_status($payment, true)) . '"><span class="give-donation-status-icon"></span> ' . give_get_payment_status($payment, true) . '</div>';
if ($payment->mode == 'test') {
$value .= ' <span class="give-item-label give-item-label-orange give-test-mode-transactions-label" data-tooltip="' . esc_attr__('This payment was made in test mode', 'give') . '">' . esc_html__('Test', 'give') . '</span>';
}
return $value;
case 'payment_id':
return '<a href="' . admin_url('edit.php?post_type=give_forms&page=give-payment-history&view=view-order-details&id=' . $item['payment_id']) . '">' . give_get_payment_number($item['payment_id']) . '</a>';
default:
return $item[$column_name];
}
}
示例5: get_recent_donations
/**
* Retrieves Recent Sales
*
* @access public
* @since 1.1
* @return array
*/
public function get_recent_donations()
{
global $wp_query;
$sales = array();
if (!user_can($this->user_id, 'view_give_reports') && !$this->override) {
return $sales;
}
if (isset($wp_query->query_vars['id'])) {
$query = array();
$query[] = give_get_payment_by('id', $wp_query->query_vars['id']);
} elseif (isset($wp_query->query_vars['purchasekey'])) {
$query = array();
$query[] = give_get_payment_by('key', $wp_query->query_vars['purchasekey']);
} elseif (isset($wp_query->query_vars['email'])) {
$query = give_get_payments(array('meta_key' => '_give_payment_user_email', 'meta_value' => $wp_query->query_vars['email'], 'number' => $this->per_page(), 'page' => $this->get_paged(), 'status' => 'publish'));
} else {
$query = give_get_payments(array('number' => $this->per_page(), 'page' => $this->get_paged(), 'status' => 'publish'));
}
if ($query) {
$i = 0;
foreach ($query as $payment) {
$payment_meta = give_get_payment_meta($payment->ID);
$user_info = give_get_payment_meta_user_info($payment->ID);
$first_name = isset($user_info['first_name']) ? $user_info['first_name'] : '';
$last_name = isset($user_info['last_name']) ? $user_info['last_name'] : '';
$sales['donations'][$i]['ID'] = give_get_payment_number($payment->ID);
$sales['donations'][$i]['transaction_id'] = give_get_payment_transaction_id($payment->ID);
$sales['donations'][$i]['key'] = give_get_payment_key($payment->ID);
$sales['donations'][$i]['total'] = give_get_payment_amount($payment->ID);
$sales['donations'][$i]['gateway'] = give_get_payment_gateway($payment->ID);
$sales['donations'][$i]['name'] = $first_name . ' ' . $last_name;
$sales['donations'][$i]['fname'] = $first_name;
$sales['donations'][$i]['lname'] = $last_name;
$sales['donations'][$i]['email'] = give_get_payment_user_email($payment->ID);
$sales['donations'][$i]['date'] = $payment->post_date;
$form_id = isset($payment_meta['form_id']) ? $payment_meta['form_id'] : $payment_meta;
$price = isset($payment_meta['form_id']) ? give_get_form_price($payment_meta['form_id']) : false;
$price_id = isset($payment_meta['price_id']) ? $payment_meta['price_id'] : null;
$sales['donations'][$i]['form']['id'] = $form_id;
$sales['donations'][$i]['form']['name'] = get_the_title($payment_meta['form_id']);
$sales['donations'][$i]['form']['price'] = $price;
if (give_has_variable_prices($form_id)) {
if (isset($payment_meta['price_id'])) {
$price_name = give_get_price_option_name($form_id, $payment_meta['price_id'], $payment->ID);
$sales['donations'][$i]['form']['price_name'] = $price_name;
$sales['donations'][$i]['form']['price_id'] = $price_id;
$sales['donations'][$i]['form']['price'] = give_get_price_option_amount($form_id, $price_id);
}
}
//Add custom meta to API
foreach ($payment_meta as $meta_key => $meta_value) {
$exceptions = array('form_title', 'form_id', 'price_id', 'user_info', 'key', 'email', 'date');
//Don't clutter up results with dupes
if (in_array($meta_key, $exceptions)) {
continue;
}
$sales['donations'][$i]['payment_meta'][$meta_key] = $meta_value;
}
$i++;
}
}
return apply_filters('give_api_donations_endpoint', $sales);
}
示例6: wp_die
// Exit if accessed directly
if (!defined('ABSPATH')) {
exit;
}
/**
* View Order Details Page
*
* @since 1.0
* @return void
*/
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
wp_die(__('Donation ID not supplied. Please try again', 'give'), __('Error', 'give'));
}
// Setup the variables
$payment_id = absint($_GET['id']);
$number = give_get_payment_number($payment_id);
$item = get_post($payment_id);
// Sanity check... fail if purchase ID is invalid
if (!is_object($item) || $item->post_type != 'give_payment') {
wp_die(__('The specified ID does not belong to a payment. Please try again', 'give'), __('Error', 'give'));
}
$payment_meta = give_get_payment_meta($payment_id);
$transaction_id = esc_attr(give_get_payment_transaction_id($payment_id));
$user_id = give_get_payment_user_id($payment_id);
$donor_id = give_get_payment_customer_id($payment_id);
$payment_date = strtotime($item->post_date);
$user_info = give_get_payment_meta_user_info($payment_id);
$address = !empty($user_info['address']) ? $user_info['address'] : array('line1' => '', 'line2' => '', 'city' => '', 'country' => '', 'state' => '', 'zip' => '');
$gateway = give_get_payment_gateway($payment_id);
$currency_code = give_get_payment_currency_code($payment_id);
?>
示例7: get_data
/**
* Get the Export Data
*
* @access public
* @since 1.0
* @global object $wpdb Used to query the database using the WordPress
* Database API
* @return array $data The data for the CSV file
*/
public function get_data()
{
global $wpdb, $give_options;
$data = array();
$payments = give_get_payments(array('offset' => 0, 'number' => -1, 'mode' => give_is_test_mode() ? 'test' : 'live', 'status' => isset($_POST['give_export_payment_status']) ? $_POST['give_export_payment_status'] : 'any', 'month' => isset($_POST['month']) ? absint($_POST['month']) : date('n'), 'year' => isset($_POST['year']) ? absint($_POST['year']) : date('Y')));
foreach ($payments as $payment) {
$payment_meta = give_get_payment_meta($payment->ID);
$user_info = give_get_payment_meta_user_info($payment->ID);
$total = give_get_payment_amount($payment->ID);
$user_id = isset($user_info['id']) && $user_info['id'] != -1 ? $user_info['id'] : $user_info['email'];
$form_id = isset($payment_meta['form_id']) ? $payment_meta['form_id'] : '';
$form_title = isset($payment_meta['form_title']) ? $payment_meta['form_title'] : '';
if (is_numeric($user_id)) {
$user = get_userdata($user_id);
} else {
$user = false;
}
$data[] = array('id' => $payment->ID, 'seq_id' => give_get_payment_number($payment->ID), 'email' => $payment_meta['email'], 'first' => $user_info['first_name'], 'last' => $user_info['last_name'], 'address1' => isset($user_info['address']['line1']) ? $user_info['address']['line1'] : '', 'address2' => isset($user_info['address']['line2']) ? $user_info['address']['line2'] : '', 'city' => isset($user_info['address']['city']) ? $user_info['address']['city'] : '', 'state' => isset($user_info['address']['state']) ? $user_info['address']['state'] : '', 'country' => isset($user_info['address']['country']) ? $user_info['address']['country'] : '', 'zip' => isset($user_info['address']['zip']) ? $user_info['address']['zip'] : '', 'amount' => html_entity_decode(give_format_amount($total)), 'form_id' => $form_id, 'form' => $form_title, 'gateway' => give_get_gateway_admin_label(get_post_meta($payment->ID, '_give_payment_gateway', true)), 'trans_id' => give_get_payment_transaction_id($payment->ID), 'key' => $payment_meta['key'], 'date' => $payment->post_date, 'user' => $user ? $user->display_name : __('guest', 'give'), 'status' => give_get_payment_status($payment, true));
}
$data = apply_filters('give_export_get_data', $data);
$data = apply_filters('give_export_get_data_' . $this->export_type, $data);
return $data;
}
示例8: give_email_tag_payment_id
/**
* Email template tag: payment_id
* The unique ID number for this donation
*
* @param int $payment_id
*
* @return int payment_id
*/
function give_email_tag_payment_id($payment_id)
{
return give_get_payment_number($payment_id);
}
示例9: column_ID
/**
* Render the ID column
*
* @access public
* @since 1.0
*
* @param array $payment Contains all the data for the checkbox column
*
* @return string Displays a checkbox
*/
public function column_ID($payment)
{
return '<span class="give-payment-id">' . give_get_payment_number($payment->ID) . '</span>';
}
示例10: do_action
<table id="give_donation_receipt" class="give-table">
<thead>
<?php
do_action('give_payment_receipt_before', $payment, $give_receipt_args);
?>
<?php
if (filter_var($give_receipt_args['payment_id'], FILTER_VALIDATE_BOOLEAN)) {
?>
<tr>
<th><strong><?php
_e('Payment', 'give');
?>
:</strong></th>
<th><?php
echo give_get_payment_number($payment->ID);
?>
</th>
</tr>
<?php
} else {
?>
<tr>
<th><strong><?php
_e('Payment', 'give');
?>
:</strong></th>
<th><?php
_e('Details', 'give');
?>
:</th>
示例11: get_payments
/**
* Retrieve payments.
*
* The query can be modified in two ways; either the action before the
* query is run, or the filter on the arguments (existing mainly for backwards
* compatibility).
*
* @access public
* @since 1.0
* @return object
*/
public function get_payments()
{
do_action('give_pre_get_payments', $this);
$query = new WP_Query($this->args);
if ('payments' != $this->args['output']) {
return $query->posts;
}
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
$details = new stdClass();
$payment_id = get_post()->ID;
$details->ID = $payment_id;
$details->date = get_post()->post_date;
$details->post_status = get_post()->post_status;
$details->total = give_get_payment_amount($payment_id);
$details->fees = give_get_payment_fees($payment_id);
$details->key = give_get_payment_key($payment_id);
$details->gateway = give_get_payment_gateway($payment_id);
$details->user_info = give_get_payment_meta_user_info($payment_id);
if (give_get_option('enable_sequential')) {
$details->payment_number = give_get_payment_number($payment_id);
}
$this->payments[] = apply_filters('give_payment', $details, $payment_id, $this);
}
wp_reset_postdata();
}
do_action('give_post_get_payments', $this);
return $this->payments;
}
示例12: give_get_next_payment_number
/**
* Gets the next available order number
*
* This is used when inserting a new payment
*
* @since 1.0
* @return string $number The next available payment number
*/
function give_get_next_payment_number()
{
if (!give_get_option('enable_sequential')) {
return false;
}
$number = get_option('give_last_payment_number');
$start = give_get_option('sequential_start', 1);
$increment_number = true;
if (false !== $number) {
if (empty($number)) {
$number = $start;
$increment_number = false;
}
} else {
// This case handles the first addition of the new option, as well as if it get's deleted for any reason
$payments = new Give_Payments_Query(array('number' => 1, 'order' => 'DESC', 'orderby' => 'ID', 'output' => 'posts', 'fields' => 'ids'));
$last_payment = $payments->get_payments();
if (!empty($last_payment)) {
$number = give_get_payment_number($last_payment[0]);
}
if (!empty($number) && $number !== (int) $last_payment[0]) {
$number = give_remove_payment_prefix_postfix($number);
} else {
$number = $start;
$increment_number = false;
}
}
$increment_number = apply_filters('give_increment_payment_number', $increment_number, $number);
if ($increment_number) {
$number++;
}
return apply_filters('give_get_next_payment_number', $number);
}
示例13: get_recent_donations
/**
* Retrieves Recent Sales
*
* @access public
* @since 1.1
* @return array
*/
public function get_recent_donations()
{
global $wp_query;
$sales = array();
if (!user_can($this->user_id, 'view_give_reports') && !$this->override) {
return $sales;
}
if (isset($wp_query->query_vars['id'])) {
$query = array();
$query[] = give_get_payment_by('id', $wp_query->query_vars['id']);
} elseif (isset($wp_query->query_vars['purchasekey'])) {
$query = array();
$query[] = give_get_payment_by('key', $wp_query->query_vars['purchasekey']);
} elseif (isset($wp_query->query_vars['email'])) {
$query = give_get_payments(array('meta_key' => '_give_payment_user_email', 'meta_value' => $wp_query->query_vars['email'], 'number' => $this->per_page(), 'page' => $this->get_paged(), 'status' => 'publish'));
} else {
$query = give_get_payments(array('number' => $this->per_page(), 'page' => $this->get_paged(), 'status' => 'publish'));
}
if ($query) {
$i = 0;
foreach ($query as $payment) {
$payment_meta = give_get_payment_meta($payment->ID);
$user_info = give_get_payment_meta_user_info($payment->ID);
$sales['donations'][$i]['ID'] = give_get_payment_number($payment->ID);
$sales['donations'][$i]['transaction_id'] = give_get_payment_transaction_id($payment->ID);
$sales['donations'][$i]['key'] = give_get_payment_key($payment->ID);
$sales['donations'][$i]['total'] = give_get_payment_amount($payment->ID);
$sales['donations'][$i]['gateway'] = give_get_payment_gateway($payment->ID);
$sales['donations'][$i]['email'] = give_get_payment_user_email($payment->ID);
$sales['donations'][$i]['date'] = $payment->post_date;
$form_id = isset($payment_meta['form_id']) ? $payment_meta['form_id'] : $payment_meta;
$price = isset($payment_meta['form_id']) ? give_get_form_price($payment_meta['form_id']) : false;
$price_id = isset($payment_meta['price_id']) ? $payment_meta['price_id'] : null;
$sales['donations'][$i]['form']['id'] = $form_id;
$sales['donations'][$i]['form']['name'] = get_the_title($payment_meta['form_id']);
$sales['donations'][$i]['form']['price'] = $price;
if (give_has_variable_prices($form_id)) {
if (isset($payment_meta['price_id'])) {
$price_name = give_get_price_option_name($form_id, $payment_meta['price_id'], $payment->ID);
$sales['donations'][$i]['form']['price_name'] = $price_name;
$sales['donations'][$i]['form']['price'] = give_get_price_option_amount($form_id, $price_id);
}
}
$i++;
}
}
return $sales;
}
示例14: give_get_next_payment_number
/**
* Gets the next available order number
*
* This is used when inserting a new payment
*
* @since 1.0
* @return string $number The next available payment number
*/
function give_get_next_payment_number()
{
if (!give_get_option('enable_sequential')) {
return false;
}
$prefix = give_get_option('sequential_prefix');
$postfix = give_get_option('sequential_postfix');
$start = give_get_option('sequential_start', 1);
$payments = new Give_Payments_Query(array('number' => 1, 'order' => 'DESC', 'orderby' => 'ID', 'output' => 'posts', 'fields' => 'ids'));
$last_payment = $payments->get_payments();
if ($last_payment) {
$number = give_get_payment_number($last_payment[0]);
if (empty($number)) {
$number = $prefix . $start . $postfix;
} else {
// Remove prefix and postfix
$number = str_replace($prefix, '', $number);
$number = str_replace($postfix, '', $number);
// Ensure it's a whole number
$number = intval($number);
// Increment the payment number
$number++;
// Re-add the prefix and postfix
$number = $prefix . $number . $postfix;
}
} else {
$number = $prefix . $start . $postfix;
}
return apply_filters('give_get_next_payment_number', $number);
}