Give_Payments_Query::get_payments PHP Méthode

get_payments() public méthode

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).
Since: 1.0
public get_payments ( ) : object
Résultat object
    public function get_payments()
    {
        do_action('give_pre_get_payments', $this);
        $query = new WP_Query($this->args);
        $custom_output = array('payments', 'give_payments');
        if (!in_array($this->args['output'], $custom_output)) {
            return $query->posts;
        }
        if ($query->have_posts()) {
            while ($query->have_posts()) {
                $query->the_post();
                $payment_id = get_post()->ID;
                $payment = new Give_Payment($payment_id);
                $this->payments[] = apply_filters('give_payment', $payment, $payment_id, $this);
            }
            wp_reset_postdata();
        }
        do_action('give_post_get_payments', $this);
        return $this->payments;
    }

Usage Example

Exemple #1
0
/**
 * 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);
}
All Usage Examples Of Give_Payments_Query::get_payments