Version Description
- Fixed the stable tag version number.
- Removed the use of HEREDOC or NOWDOC syntax.
Download this release
Release Info
| Developer | mra13 |
| Plugin | |
| Version | 4.9.8 |
| Comparing to | |
| See all releases | |
Code changes from version 4.9.1 to 4.9.8
- WP_Accept_Paypal_Payment.php +37 -32
- index.php +1 -0
- readme.txt +40 -6
- shortcode_view.php +14 -10
- wpapp-styles.css +19 -0
- wpapp_admin_menu.php +52 -31
- wpapp_paypal_utility.php +61 -21
WP_Accept_Paypal_Payment.php
CHANGED
|
@@ -1,13 +1,13 @@
|
|
| 1 |
<?php
|
| 2 |
/*
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
|
| 12 |
//Slug - wpapp
|
| 13 |
|
|
@@ -15,7 +15,7 @@ if (!defined('ABSPATH')){//Exit if accessed directly
|
|
| 15 |
exit;
|
| 16 |
}
|
| 17 |
|
| 18 |
-
define('WP_PAYPAL_PAYMENT_ACCEPT_PLUGIN_VERSION', '4.9');
|
| 19 |
define('WP_PAYPAL_PAYMENT_ACCEPT_PLUGIN_URL', plugins_url('', __FILE__));
|
| 20 |
|
| 21 |
include_once('shortcode_view.php');
|
|
@@ -39,6 +39,7 @@ function wp_pp_plugin_install() {
|
|
| 39 |
add_option('wp_pp_show_ref_box', '1');
|
| 40 |
add_option('wp_pp_ref_title', 'Your Email Address');
|
| 41 |
add_option('wp_pp_return_url', home_url());
|
|
|
|
| 42 |
}
|
| 43 |
|
| 44 |
register_activation_hook(__FILE__, 'wp_pp_plugin_install');
|
|
@@ -82,8 +83,9 @@ function Paypal_payment_accept() {
|
|
| 82 |
$wp_pp_show_ref_box = get_option('wp_pp_show_ref_box');
|
| 83 |
$wp_pp_ref_title = get_option('wp_pp_ref_title');
|
| 84 |
$wp_pp_return_url = get_option('wp_pp_return_url');
|
|
|
|
| 85 |
|
| 86 |
-
/* ===
|
| 87 |
$output = '';
|
| 88 |
$output .= '<div id="accept_paypal_payment_form">';
|
| 89 |
$output .= '<form action="https://www.paypal.com/cgi-bin/webscr" method="post" class="wp_accept_pp_button_form_classic">';
|
|
@@ -91,7 +93,7 @@ function Paypal_payment_accept() {
|
|
| 91 |
$output .= '<input type="hidden" name="business" value="'.esc_attr($paypal_email).'" />';
|
| 92 |
$output .= '<input type="hidden" name="item_name" value="'.esc_attr($paypal_subject).'" />';
|
| 93 |
$output .= '<input type="hidden" name="currency_code" value="'.esc_attr($payment_currency).'" />';
|
| 94 |
-
$output .= '<span class="payment_subject"><strong>'.esc_attr($paypal_subject).'</strong></span
|
| 95 |
$output .= '<select id="amount" name="amount" class="">';
|
| 96 |
$output .= '<option value="'.esc_attr($value1).'">'.esc_attr($itemName1).'</option>';
|
| 97 |
if (!empty($value2)) {
|
|
@@ -114,53 +116,56 @@ function Paypal_payment_accept() {
|
|
| 114 |
|
| 115 |
// Show other amount text box
|
| 116 |
if ($wp_pp_show_other_amount == '1') {
|
| 117 |
-
$output .= '<
|
| 118 |
-
$output .= '<
|
| 119 |
}
|
| 120 |
|
| 121 |
// Show the reference text box
|
| 122 |
if ($wp_pp_show_ref_box == '1') {
|
| 123 |
-
$output .= '<
|
| 124 |
$output .= '<input type="hidden" name="on0" value="'.apply_filters('wp_pp_button_reference_name','Reference').'" />';
|
| 125 |
-
$output .= '<
|
| 126 |
}
|
| 127 |
|
| 128 |
-
$output .= '<
|
| 129 |
-
|
| 130 |
-
<input type="hidden" name="no_note" value="1" />
|
| 131 |
-
<input type="hidden" name="bn" value="TipsandTricks_SP" />';
|
| 132 |
-
|
| 133 |
if (!empty($wp_pp_return_url)) {
|
| 134 |
$output .= '<input type="hidden" name="return" value="' . esc_url($wp_pp_return_url) . '" />';
|
| 135 |
} else {
|
| 136 |
$output .='<input type="hidden" name="return" value="' . home_url() . '" />';
|
| 137 |
}
|
| 138 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 139 |
$output .= '<input type="image" src="'.esc_url($payment_button).'" name="submit" alt="Make payments with payPal - it\'s fast, free and secure!" />';
|
|
|
|
|
|
|
| 140 |
$output .= '</form>';
|
| 141 |
$output .= '</div>';
|
| 142 |
-
$output .=
|
| 143 |
<script type="text/javascript">
|
| 144 |
jQuery(document).ready(function($) {
|
| 145 |
-
$(
|
| 146 |
var form_obj = $(this);
|
| 147 |
-
var other_amt = form_obj.find(
|
| 148 |
if (!isNaN(other_amt) && other_amt.length > 0){
|
| 149 |
options_val = other_amt;
|
| 150 |
//insert the amount field in the form with the custom amount
|
| 151 |
-
$(
|
| 152 |
-
type:
|
| 153 |
-
id:
|
| 154 |
-
name:
|
| 155 |
value: options_val
|
| 156 |
}).appendTo(form_obj);
|
| 157 |
-
}
|
| 158 |
return;
|
| 159 |
});
|
| 160 |
});
|
| 161 |
-
</script>
|
| 162 |
-
|
| 163 |
-
/* = end of paypal form = */
|
| 164 |
return $output;
|
| 165 |
}
|
| 166 |
|
|
@@ -198,7 +203,7 @@ function wp_paypal_payment_init() {
|
|
| 198 |
$widget_options = array('classname' => 'widget_wp_paypal_payment', 'description' => __("Display WP Paypal Payment."));
|
| 199 |
wp_register_sidebar_widget('wp_paypal_payment_widgets', __('WP Paypal Payment'), 'show_wp_paypal_payment_widget', $widget_options);
|
| 200 |
wp_register_widget_control('wp_paypal_payment_widgets', __('WP Paypal Payment'), 'wp_paypal_payment_widget_control');
|
| 201 |
-
|
| 202 |
//Listen for IPN and validate it
|
| 203 |
if (isset($_REQUEST['wpapp_paypal_ipn']) && $_REQUEST['wpapp_paypal_ipn'] == "process") {
|
| 204 |
wpapp_validate_paypl_ipn();
|
| 1 |
<?php
|
| 2 |
/*
|
| 3 |
+
Plugin Name: Easy Accept Payments for PayPal
|
| 4 |
+
Version: 4.9.8
|
| 5 |
+
Plugin URI: https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120
|
| 6 |
+
Author: Tips and Tricks HQ
|
| 7 |
+
Author URI: https://www.tipsandtricks-hq.com/
|
| 8 |
+
Description: Easy to use Wordpress plugin to accept paypal payment for a service or product or donation in one click. Can be used in the sidebar, posts and pages.
|
| 9 |
+
License: GPL2
|
| 10 |
+
*/
|
| 11 |
|
| 12 |
//Slug - wpapp
|
| 13 |
|
| 15 |
exit;
|
| 16 |
}
|
| 17 |
|
| 18 |
+
define('WP_PAYPAL_PAYMENT_ACCEPT_PLUGIN_VERSION', '4.9.8');
|
| 19 |
define('WP_PAYPAL_PAYMENT_ACCEPT_PLUGIN_URL', plugins_url('', __FILE__));
|
| 20 |
|
| 21 |
include_once('shortcode_view.php');
|
| 39 |
add_option('wp_pp_show_ref_box', '1');
|
| 40 |
add_option('wp_pp_ref_title', 'Your Email Address');
|
| 41 |
add_option('wp_pp_return_url', home_url());
|
| 42 |
+
add_option('wp_pp_cancel_url', home_url());
|
| 43 |
}
|
| 44 |
|
| 45 |
register_activation_hook(__FILE__, 'wp_pp_plugin_install');
|
| 83 |
$wp_pp_show_ref_box = get_option('wp_pp_show_ref_box');
|
| 84 |
$wp_pp_ref_title = get_option('wp_pp_ref_title');
|
| 85 |
$wp_pp_return_url = get_option('wp_pp_return_url');
|
| 86 |
+
$wp_pp_cancel_url = get_option('wp_pp_cancel_url');
|
| 87 |
|
| 88 |
+
/* === Start of the form === */
|
| 89 |
$output = '';
|
| 90 |
$output .= '<div id="accept_paypal_payment_form">';
|
| 91 |
$output .= '<form action="https://www.paypal.com/cgi-bin/webscr" method="post" class="wp_accept_pp_button_form_classic">';
|
| 93 |
$output .= '<input type="hidden" name="business" value="'.esc_attr($paypal_email).'" />';
|
| 94 |
$output .= '<input type="hidden" name="item_name" value="'.esc_attr($paypal_subject).'" />';
|
| 95 |
$output .= '<input type="hidden" name="currency_code" value="'.esc_attr($payment_currency).'" />';
|
| 96 |
+
$output .= '<div class="wpapp_payment_subject"><span class="payment_subject"><strong>'.esc_attr($paypal_subject).'</strong></span></div>';
|
| 97 |
$output .= '<select id="amount" name="amount" class="">';
|
| 98 |
$output .= '<option value="'.esc_attr($value1).'">'.esc_attr($itemName1).'</option>';
|
| 99 |
if (!empty($value2)) {
|
| 116 |
|
| 117 |
// Show other amount text box
|
| 118 |
if ($wp_pp_show_other_amount == '1') {
|
| 119 |
+
$output .= '<div class="wpapp_other_amount_label"><strong>Other Amount:</strong></div>';
|
| 120 |
+
$output .= '<div class="wpapp_other_amount_input"><input type="number" min="1" step="any" name="other_amount" title="Other Amount" value="" class="wpapp_other_amt_input" style="max-width:80px;" /></div>';
|
| 121 |
}
|
| 122 |
|
| 123 |
// Show the reference text box
|
| 124 |
if ($wp_pp_show_ref_box == '1') {
|
| 125 |
+
$output .= '<div class="wpapp_ref_title_label"><strong>'.esc_attr($wp_pp_ref_title).':</strong></div>';
|
| 126 |
$output .= '<input type="hidden" name="on0" value="'.apply_filters('wp_pp_button_reference_name','Reference').'" />';
|
| 127 |
+
$output .= '<div class="wpapp_ref_value"><input type="text" name="os0" maxlength="60" value="'.apply_filters('wp_pp_button_reference_value','').'" class="wp_pp_button_reference" /></div>';
|
| 128 |
}
|
| 129 |
|
| 130 |
+
$output .= '<input type="hidden" name="no_shipping" value="0" /><input type="hidden" name="no_note" value="1" /><input type="hidden" name="bn" value="TipsandTricks_SP" />';
|
| 131 |
+
|
|
|
|
|
|
|
|
|
|
| 132 |
if (!empty($wp_pp_return_url)) {
|
| 133 |
$output .= '<input type="hidden" name="return" value="' . esc_url($wp_pp_return_url) . '" />';
|
| 134 |
} else {
|
| 135 |
$output .='<input type="hidden" name="return" value="' . home_url() . '" />';
|
| 136 |
}
|
| 137 |
|
| 138 |
+
if (!empty($wp_pp_cancel_url)) {
|
| 139 |
+
$output .= '<input type="hidden" name="cancel_return" value="' . esc_url($wp_pp_cancel_url) . '" />';
|
| 140 |
+
}
|
| 141 |
+
|
| 142 |
+
$output .= '<div class="wpapp_payment_button">';
|
| 143 |
$output .= '<input type="image" src="'.esc_url($payment_button).'" name="submit" alt="Make payments with payPal - it\'s fast, free and secure!" />';
|
| 144 |
+
$output .= '</div>';
|
| 145 |
+
|
| 146 |
$output .= '</form>';
|
| 147 |
$output .= '</div>';
|
| 148 |
+
$output .= '
|
| 149 |
<script type="text/javascript">
|
| 150 |
jQuery(document).ready(function($) {
|
| 151 |
+
$(".wp_accept_pp_button_form_classic").submit(function(e){
|
| 152 |
var form_obj = $(this);
|
| 153 |
+
var other_amt = form_obj.find("input[name=other_amount]").val();
|
| 154 |
if (!isNaN(other_amt) && other_amt.length > 0){
|
| 155 |
options_val = other_amt;
|
| 156 |
//insert the amount field in the form with the custom amount
|
| 157 |
+
$("<input>").attr({
|
| 158 |
+
type: "hidden",
|
| 159 |
+
id: "amount",
|
| 160 |
+
name: "amount",
|
| 161 |
value: options_val
|
| 162 |
}).appendTo(form_obj);
|
| 163 |
+
}
|
| 164 |
return;
|
| 165 |
});
|
| 166 |
});
|
| 167 |
+
</script>';
|
| 168 |
+
/* = end of form = */
|
|
|
|
| 169 |
return $output;
|
| 170 |
}
|
| 171 |
|
| 203 |
$widget_options = array('classname' => 'widget_wp_paypal_payment', 'description' => __("Display WP Paypal Payment."));
|
| 204 |
wp_register_sidebar_widget('wp_paypal_payment_widgets', __('WP Paypal Payment'), 'show_wp_paypal_payment_widget', $widget_options);
|
| 205 |
wp_register_widget_control('wp_paypal_payment_widgets', __('WP Paypal Payment'), 'wp_paypal_payment_widget_control');
|
| 206 |
+
|
| 207 |
//Listen for IPN and validate it
|
| 208 |
if (isset($_REQUEST['wpapp_paypal_ipn']) && $_REQUEST['wpapp_paypal_ipn'] == "process") {
|
| 209 |
wpapp_validate_paypl_ipn();
|
index.php
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
| 1 |
+
<?php // Silence is golden
|
readme.txt
CHANGED
|
@@ -1,17 +1,17 @@
|
|
| 1 |
-
===
|
| 2 |
Contributors: Tips and Tricks HQ, Ruhul Amin, mbrsolution
|
| 3 |
Donate link: https://www.tipsandtricks-hq.com
|
| 4 |
Tags: Paypal payment, Accept payment for services or product, PayPal donation, wordpress paypal, paypal for wordpress, paypal plugin for wordpress, paypal integration, paypal, buy now, payment, currency,
|
| 5 |
-
Requires at least:
|
| 6 |
-
Tested up to:
|
| 7 |
-
Stable tag: 4.9.
|
| 8 |
License: GPLv2 or later
|
| 9 |
|
| 10 |
-
Easy to use Wordpress plugin to accept
|
| 11 |
|
| 12 |
== Description ==
|
| 13 |
|
| 14 |
-
Easy to use
|
| 15 |
|
| 16 |
For information, detailed documentation, video tutorial and updates, please visit the [WordPress PayPal Payment](https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120) Plugin Page
|
| 17 |
|
|
@@ -39,8 +39,15 @@ For information, detailed documentation, video tutorial and updates, please visi
|
|
| 39 |
* Create text based or image based payment buttons.
|
| 40 |
* Ability to return the user to a specific page after the payment.
|
| 41 |
|
|
|
|
|
|
|
|
|
|
| 42 |
== Usage ==
|
| 43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
There are few ways you can use this plugin:
|
| 45 |
|
| 46 |
1. Use the sortcode [wp_paypal_payment] to place the payment accept form.
|
|
@@ -62,6 +69,33 @@ There are few ways you can use this plugin:
|
|
| 62 |
Visit the plugin site at https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120 for screenshots.
|
| 63 |
|
| 64 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
= 4.9.1 =
|
| 66 |
- Added sanitization and escaping.
|
| 67 |
|
| 1 |
+
=== Easy Accept Payments for PayPal ===
|
| 2 |
Contributors: Tips and Tricks HQ, Ruhul Amin, mbrsolution
|
| 3 |
Donate link: https://www.tipsandtricks-hq.com
|
| 4 |
Tags: Paypal payment, Accept payment for services or product, PayPal donation, wordpress paypal, paypal for wordpress, paypal plugin for wordpress, paypal integration, paypal, buy now, payment, currency,
|
| 5 |
+
Requires at least: 5.5
|
| 6 |
+
Tested up to: 6.0
|
| 7 |
+
Stable tag: 4.9.8
|
| 8 |
License: GPLv2 or later
|
| 9 |
|
| 10 |
+
Easy to use Wordpress plugin to accept PayPal payments for a service or product or donation in one click
|
| 11 |
|
| 12 |
== Description ==
|
| 13 |
|
| 14 |
+
Easy to use WordPress plugin to accept PayPal payments for a service or product or donation in one click. Can be used in the sidebar, posts and pages of your site.
|
| 15 |
|
| 16 |
For information, detailed documentation, video tutorial and updates, please visit the [WordPress PayPal Payment](https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120) Plugin Page
|
| 17 |
|
| 39 |
* Create text based or image based payment buttons.
|
| 40 |
* Ability to return the user to a specific page after the payment.
|
| 41 |
|
| 42 |
+
== Note ==
|
| 43 |
+
This is NOT an official plugin from PayPal. This plugin has been developed by an independent developer.
|
| 44 |
+
|
| 45 |
== Usage ==
|
| 46 |
|
| 47 |
+
https://www.youtube.com/watch?v=Jvy5E1ea8VA
|
| 48 |
+
|
| 49 |
+
https://www.youtube.com/watch?v=XL7Q8eU9dOY
|
| 50 |
+
|
| 51 |
There are few ways you can use this plugin:
|
| 52 |
|
| 53 |
1. Use the sortcode [wp_paypal_payment] to place the payment accept form.
|
| 69 |
Visit the plugin site at https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120 for screenshots.
|
| 70 |
|
| 71 |
== Changelog ==
|
| 72 |
+
|
| 73 |
+
= 4.9.8 =
|
| 74 |
+
- Fixed the stable tag version number.
|
| 75 |
+
- Removed the use of HEREDOC or NOWDOC syntax.
|
| 76 |
+
|
| 77 |
+
= 4.9.7 =
|
| 78 |
+
- Updated the banner and icon graphics used in the plugin's page.
|
| 79 |
+
- Tested on WP6.0
|
| 80 |
+
|
| 81 |
+
= 4.9.6 =
|
| 82 |
+
- Added new shortcode parameters that can be used to specify placeholder value for the "reference" and "other amount" fields.
|
| 83 |
+
|
| 84 |
+
= 4.9.5 =
|
| 85 |
+
- Added a Cancel URL field in the settings. This can be used to specify a cancel URL for the [wp_paypal_payment_box] shortcode.
|
| 86 |
+
|
| 87 |
+
= 4.9.4 =
|
| 88 |
+
- Removed a warning from the settings menu of this plugin.
|
| 89 |
+
- Updated the settings menu header to use h2 tag.
|
| 90 |
+
|
| 91 |
+
= 4.9.3 =
|
| 92 |
+
- WordPress 4.7 compatibility.
|
| 93 |
+
- Fixed an issue with using quotation marks in Payment Subject.
|
| 94 |
+
|
| 95 |
+
= 4.9.2 =
|
| 96 |
+
- Added a CSS class to the other amount input field.
|
| 97 |
+
- Replaced the line-breaks in the default shortcode output to use CSS divs with a default margin of 10px. This should produce better output in any given WordPress theme.
|
| 98 |
+
|
| 99 |
= 4.9.1 =
|
| 100 |
- Added sanitization and escaping.
|
| 101 |
|
shortcode_view.php
CHANGED
|
@@ -6,8 +6,10 @@ function wppp_render_paypal_button_with_other_amt($args) {
|
|
| 6 |
'description' => '',
|
| 7 |
'default_amount' => '',
|
| 8 |
'other_amount_label' => 'Amount:',
|
|
|
|
| 9 |
'currency' => 'USD',
|
| 10 |
'reference' => '',
|
|
|
|
| 11 |
'return' => site_url(),
|
| 12 |
'cbt' => '',
|
| 13 |
'country_code' => '',
|
|
@@ -43,16 +45,16 @@ function wppp_render_paypal_button_with_other_amt($args) {
|
|
| 43 |
$window_target = 'target="_blank"';
|
| 44 |
}
|
| 45 |
$output .= '<div class="wp_paypal_button_widget_any_amt">';
|
| 46 |
-
$output .= '<form name="_xclick" class="wp_accept_pp_button_form_any_amount" action="https://www.paypal.com/cgi-bin/webscr" method="post" ' . $window_target . '>';
|
| 47 |
|
| 48 |
-
$output .= '<div class="wp_pp_button_amount_section">'.esc_attr($other_amount_label).' <input type="number" min="1" step="any" name="amount" value="' . esc_attr($default_amount) . '" style="max-width:
|
| 49 |
|
| 50 |
if (!empty($reference)) {
|
| 51 |
$output .= '<div class="wp_pp_button_reference_section">';
|
| 52 |
$output .= '<label for="wp_pp_button_reference">' . esc_attr($reference) . '</label>';
|
| 53 |
$output .= '<br />';
|
| 54 |
$output .= '<input type="hidden" name="on0" value="' . apply_filters('wp_pp_button_reference_name', 'Reference') . '" />';
|
| 55 |
-
$output .= '<input type="text" name="os0" value="' . apply_filters('wp_pp_button_reference_value', '') . '" class="wp_pp_button_reference" />';
|
| 56 |
$output .= '</div>';
|
| 57 |
}
|
| 58 |
|
|
@@ -100,8 +102,10 @@ function wppp_render_paypal_button_form($args) {
|
|
| 100 |
'return' => site_url(),
|
| 101 |
'cbt' => '',
|
| 102 |
'reference' => 'Your Email Address',
|
|
|
|
| 103 |
'other_amount' => '',
|
| 104 |
'other_amount_label' => 'Other Amount:',
|
|
|
|
| 105 |
'country_code' => '',
|
| 106 |
'payment_subject' => '',
|
| 107 |
'button_image' => '',
|
|
@@ -139,17 +143,17 @@ function wppp_render_paypal_button_form($args) {
|
|
| 139 |
}
|
| 140 |
?>
|
| 141 |
<div class="wp_paypal_button_widget">
|
| 142 |
-
<form name="_xclick" class="wp_accept_pp_button_form" action="https://www.paypal.com/cgi-bin/webscr" method="post" <?php echo $window_target; ?> >
|
| 143 |
<div class="wp_pp_button_selection_section">
|
| 144 |
<select class="wp_paypal_button_options">
|
| 145 |
-
<?php echo $html_options; ?>
|
| 146 |
</select>
|
| 147 |
</div>
|
| 148 |
|
| 149 |
<?php
|
| 150 |
if (!empty($other_amount)) {
|
| 151 |
echo '<div class="wp_pp_button_other_amt_section">';
|
| 152 |
-
echo esc_attr($other_amount_label).' <input type="number" min="1" step="any" name="other_amount" value="" style="max-width:
|
| 153 |
echo '</div>';
|
| 154 |
}
|
| 155 |
|
|
@@ -158,7 +162,7 @@ function wppp_render_paypal_button_form($args) {
|
|
| 158 |
echo '<label for="wp_pp_button_reference">' . esc_attr($reference) . '</label>';
|
| 159 |
echo '<br />';
|
| 160 |
echo '<input type="hidden" name="on0" value="' . apply_filters('wp_pp_button_reference_name', 'Reference') . '" />';
|
| 161 |
-
echo '<input type="text" name="os0" value="' . apply_filters('wp_pp_button_reference_value', '') . '" class="wp_pp_button_reference" />';
|
| 162 |
echo '</div>';
|
| 163 |
}
|
| 164 |
|
|
@@ -174,7 +178,7 @@ function wppp_render_paypal_button_form($args) {
|
|
| 174 |
<input type="hidden" name="currency_code" value="<?php echo esc_attr($currency); ?>">
|
| 175 |
<input type="hidden" name="item_name" value="">
|
| 176 |
<input type="hidden" name="amount" value="">
|
| 177 |
-
<input type="hidden" name="return" value="<?php echo esc_url($return); ?>" />
|
| 178 |
<input type="hidden" name="rm" value="<?php echo esc_attr($rm); ?>" />
|
| 179 |
<input type="hidden" name="email" value="" />
|
| 180 |
<?php
|
|
@@ -198,13 +202,13 @@ function wppp_render_paypal_button_form($args) {
|
|
| 198 |
echo '<div class="wp_pp_button_submit_btn">';
|
| 199 |
if (!empty($button_text)) {//Use text button
|
| 200 |
$button_class = apply_filters('wppp_text_button_class', '');
|
| 201 |
-
echo '<input type="submit" name="submit" class="' . $button_class . '" value="' . esc_attr($button_text) . '" />';
|
| 202 |
} else {//Use image button
|
| 203 |
echo '<input type="image" id="buy_now_button" class="buy_now_button_image" src="' . esc_url($payment_button_img_src) . '" border="0" name="submit" alt="Make payments with PayPal">';
|
| 204 |
}
|
| 205 |
echo '</div>';
|
| 206 |
?>
|
| 207 |
-
</form>
|
| 208 |
</div>
|
| 209 |
|
| 210 |
<script type="text/javascript">
|
| 6 |
'description' => '',
|
| 7 |
'default_amount' => '',
|
| 8 |
'other_amount_label' => 'Amount:',
|
| 9 |
+
'other_amount_placeholder' => '',
|
| 10 |
'currency' => 'USD',
|
| 11 |
'reference' => '',
|
| 12 |
+
'reference_placeholder' => '',
|
| 13 |
'return' => site_url(),
|
| 14 |
'cbt' => '',
|
| 15 |
'country_code' => '',
|
| 45 |
$window_target = 'target="_blank"';
|
| 46 |
}
|
| 47 |
$output .= '<div class="wp_paypal_button_widget_any_amt">';
|
| 48 |
+
$output .= '<form name="_xclick" class="wp_accept_pp_button_form_any_amount" action="https://www.paypal.com/cgi-bin/webscr" method="post" ' . esc_attr($window_target) . '>';
|
| 49 |
|
| 50 |
+
$output .= '<div class="wp_pp_button_amount_section">'.esc_attr($other_amount_label).' <input type="number" min="1" step="any" name="amount" value="' . esc_attr($default_amount) . '" placeholder="'.$other_amount_placeholder.'" class="wpapp_other_amt_input" style="max-width:80px;"> ' . esc_attr($currency) . '</div>';
|
| 51 |
|
| 52 |
if (!empty($reference)) {
|
| 53 |
$output .= '<div class="wp_pp_button_reference_section">';
|
| 54 |
$output .= '<label for="wp_pp_button_reference">' . esc_attr($reference) . '</label>';
|
| 55 |
$output .= '<br />';
|
| 56 |
$output .= '<input type="hidden" name="on0" value="' . apply_filters('wp_pp_button_reference_name', 'Reference') . '" />';
|
| 57 |
+
$output .= '<input type="text" name="os0" value="' . apply_filters('wp_pp_button_reference_value', '') . '" placeholder="'.esc_attr($reference_placeholder).'" class="wp_pp_button_reference" />';
|
| 58 |
$output .= '</div>';
|
| 59 |
}
|
| 60 |
|
| 102 |
'return' => site_url(),
|
| 103 |
'cbt' => '',
|
| 104 |
'reference' => 'Your Email Address',
|
| 105 |
+
'reference_placeholder' => '',
|
| 106 |
'other_amount' => '',
|
| 107 |
'other_amount_label' => 'Other Amount:',
|
| 108 |
+
'other_amount_placeholder' => '',
|
| 109 |
'country_code' => '',
|
| 110 |
'payment_subject' => '',
|
| 111 |
'button_image' => '',
|
| 143 |
}
|
| 144 |
?>
|
| 145 |
<div class="wp_paypal_button_widget">
|
| 146 |
+
<form name="_xclick" class="wp_accept_pp_button_form" action="https://www.paypal.com/cgi-bin/webscr" method="post" <?php echo esc_attr($window_target); ?> >
|
| 147 |
<div class="wp_pp_button_selection_section">
|
| 148 |
<select class="wp_paypal_button_options">
|
| 149 |
+
<?php echo wp_kses( $html_options, wpapp_allowed_tags() ); ?>
|
| 150 |
</select>
|
| 151 |
</div>
|
| 152 |
|
| 153 |
<?php
|
| 154 |
if (!empty($other_amount)) {
|
| 155 |
echo '<div class="wp_pp_button_other_amt_section">';
|
| 156 |
+
echo esc_attr($other_amount_label).' <input type="number" min="1" step="any" name="other_amount" value="" placeholder="'.esc_attr($other_amount_placeholder).'" class="wpapp_other_amt_input" style="max-width:80px;"> ' . esc_attr($currency);
|
| 157 |
echo '</div>';
|
| 158 |
}
|
| 159 |
|
| 162 |
echo '<label for="wp_pp_button_reference">' . esc_attr($reference) . '</label>';
|
| 163 |
echo '<br />';
|
| 164 |
echo '<input type="hidden" name="on0" value="' . apply_filters('wp_pp_button_reference_name', 'Reference') . '" />';
|
| 165 |
+
echo '<input type="text" name="os0" value="' . apply_filters('wp_pp_button_reference_value', '') . '" class="wp_pp_button_reference" placeholder="'.esc_attr($reference_placeholder).'" />';
|
| 166 |
echo '</div>';
|
| 167 |
}
|
| 168 |
|
| 178 |
<input type="hidden" name="currency_code" value="<?php echo esc_attr($currency); ?>">
|
| 179 |
<input type="hidden" name="item_name" value="">
|
| 180 |
<input type="hidden" name="amount" value="">
|
| 181 |
+
<input type="hidden" name="return" value="<?php echo esc_url($return); ?>" />
|
| 182 |
<input type="hidden" name="rm" value="<?php echo esc_attr($rm); ?>" />
|
| 183 |
<input type="hidden" name="email" value="" />
|
| 184 |
<?php
|
| 202 |
echo '<div class="wp_pp_button_submit_btn">';
|
| 203 |
if (!empty($button_text)) {//Use text button
|
| 204 |
$button_class = apply_filters('wppp_text_button_class', '');
|
| 205 |
+
echo '<input type="submit" name="submit" class="' . esc_attr($button_class) . '" value="' . esc_attr($button_text) . '" />';
|
| 206 |
} else {//Use image button
|
| 207 |
echo '<input type="image" id="buy_now_button" class="buy_now_button_image" src="' . esc_url($payment_button_img_src) . '" border="0" name="submit" alt="Make payments with PayPal">';
|
| 208 |
}
|
| 209 |
echo '</div>';
|
| 210 |
?>
|
| 211 |
+
</form>
|
| 212 |
</div>
|
| 213 |
|
| 214 |
<script type="text/javascript">
|
wpapp-styles.css
CHANGED
|
@@ -7,7 +7,26 @@
|
|
| 7 |
.wp_accept_pp_button_form input{
|
| 8 |
width: auto !important;
|
| 9 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
.buy_now_button_image {
|
| 12 |
max-width: 100%;
|
| 13 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
.wp_accept_pp_button_form input{
|
| 8 |
width: auto !important;
|
| 9 |
}
|
| 10 |
+
.wp_accept_pp_button_form input[type="image"]{
|
| 11 |
+
cursor: pointer;
|
| 12 |
+
}
|
| 13 |
+
.wp_accept_pp_button_form_classic input[type="image"]{
|
| 14 |
+
cursor: pointer;
|
| 15 |
+
}
|
| 16 |
|
| 17 |
.buy_now_button_image {
|
| 18 |
max-width: 100%;
|
| 19 |
}
|
| 20 |
+
|
| 21 |
+
.wpapp_payment_subject{
|
| 22 |
+
margin: 10px 0px;
|
| 23 |
+
}
|
| 24 |
+
.wpapp_other_amount_label{
|
| 25 |
+
margin: 10px 0px;
|
| 26 |
+
}
|
| 27 |
+
.wpapp_ref_title_label{
|
| 28 |
+
margin: 10px 0px;
|
| 29 |
+
}
|
| 30 |
+
.wpapp_payment_button{
|
| 31 |
+
margin: 10px 0px;
|
| 32 |
+
}
|
wpapp_admin_menu.php
CHANGED
|
@@ -14,7 +14,7 @@ function paypal_payment_options_page() {
|
|
| 14 |
if(!current_user_can('manage_options')){
|
| 15 |
wp_die('You do not have permission to access this settings page.');
|
| 16 |
}
|
| 17 |
-
|
| 18 |
if (isset($_POST['info_update'])) {
|
| 19 |
$nonce = $_REQUEST['_wpnonce'];
|
| 20 |
if ( !wp_verify_nonce($nonce, 'wp_accept_pp_payment_settings_update')){
|
|
@@ -27,29 +27,35 @@ function paypal_payment_options_page() {
|
|
| 27 |
$value4 = filter_input(INPUT_POST, 'wp_pp_payment_value4', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 28 |
$value5 = filter_input(INPUT_POST, 'wp_pp_payment_value5', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 29 |
$value6 = filter_input(INPUT_POST, 'wp_pp_payment_value6', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 30 |
-
|
| 31 |
-
update_option('wp_paypal_widget_title_name', sanitize_text_field($_POST["wp_paypal_widget_title_name"]));
|
| 32 |
update_option('wp_pp_payment_email', sanitize_email($_POST["wp_pp_payment_email"]));
|
| 33 |
update_option('paypal_payment_currency', sanitize_text_field($_POST["paypal_payment_currency"]));
|
| 34 |
-
update_option('wp_pp_payment_subject', sanitize_text_field($_POST["wp_pp_payment_subject"]));
|
| 35 |
-
update_option('wp_pp_payment_item1', sanitize_text_field($_POST["wp_pp_payment_item1"]));
|
| 36 |
update_option('wp_pp_payment_value1', $value1);
|
| 37 |
-
update_option('wp_pp_payment_item2', sanitize_text_field($_POST["wp_pp_payment_item2"]));
|
| 38 |
update_option('wp_pp_payment_value2', $value2);
|
| 39 |
-
update_option('wp_pp_payment_item3', sanitize_text_field($_POST["wp_pp_payment_item3"]));
|
| 40 |
update_option('wp_pp_payment_value3', $value3);
|
| 41 |
-
update_option('wp_pp_payment_item4', sanitize_text_field($_POST["wp_pp_payment_item4"]));
|
| 42 |
update_option('wp_pp_payment_value4', $value4);
|
| 43 |
-
update_option('wp_pp_payment_item5', sanitize_text_field($_POST["wp_pp_payment_item5"]));
|
| 44 |
update_option('wp_pp_payment_value5', $value5);
|
| 45 |
-
update_option('wp_pp_payment_item6', sanitize_text_field($_POST["wp_pp_payment_item6"]));
|
| 46 |
update_option('wp_pp_payment_value6', $value6);
|
| 47 |
update_option('payment_button_type', sanitize_text_field($_POST["payment_button_type"]));
|
| 48 |
-
update_option('wp_pp_show_other_amount', ($_POST['wp_pp_show_other_amount']
|
| 49 |
-
update_option('wp_pp_show_ref_box', ($_POST['wp_pp_show_ref_box']
|
| 50 |
-
update_option('wp_pp_ref_title', sanitize_text_field($_POST["wp_pp_ref_title"]));
|
| 51 |
update_option('wp_pp_return_url', esc_url_raw(sanitize_text_field($_POST["wp_pp_return_url"])));
|
| 52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 53 |
echo '<div id="message" class="updated fade"><p><strong>';
|
| 54 |
echo 'Options Updated!';
|
| 55 |
echo '</strong></p></div>';
|
|
@@ -60,30 +66,30 @@ function paypal_payment_options_page() {
|
|
| 60 |
?>
|
| 61 |
|
| 62 |
<div class=wrap>
|
| 63 |
-
<
|
| 64 |
|
| 65 |
-
|
| 66 |
|
| 67 |
<div style="background: none repeat scroll 0 0 #ECECEC;border: 1px solid #CFCFCF;color: #363636;margin: 10px 0 15px;padding:15px;text-shadow: 1px 1px #FFFFFF;">
|
| 68 |
For usage documentation and updates, please visit the plugin page at the following URL:<br />
|
| 69 |
<a href="https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120" target="_blank">https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120</a>
|
| 70 |
</div>
|
| 71 |
|
| 72 |
-
<form method="post" action="
|
| 73 |
<?php wp_nonce_field('wp_accept_pp_payment_settings_update'); ?>
|
| 74 |
-
|
| 75 |
<input type="hidden" name="info_update" id="info_update" value="true" />
|
| 76 |
|
| 77 |
<div class="postbox">
|
| 78 |
<h3 class="hndle"><label for="title">Plugin Usage</label></h3>
|
| 79 |
-
<div class="inside">
|
| 80 |
-
<p>There are a few ways you can use this plugin:</p>
|
| 81 |
<ol>
|
| 82 |
<li>Configure the options below and then add the shortcode <strong>[wp_paypal_payment]</strong> to a post or page (where you want the payment button)</li>
|
|
|
|
|
|
|
| 83 |
<li>Call the function from a template file: <strong><?php echo Paypal_payment_accept(); ?></strong></li>
|
| 84 |
<li>Use the <strong>WP Paypal Payment</strong> Widget from the Widgets menu</li>
|
| 85 |
-
<li>Use the shortcode with custom parameter options to add multiple different payment widgets in different areas of the site.
|
| 86 |
-
<a href="https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120#shortcode_with_custom_parameters" target="_blank">View shortcode documentation</a></li>
|
| 87 |
</ol>
|
| 88 |
</div></div>
|
| 89 |
|
|
@@ -99,7 +105,7 @@ function paypal_payment_options_page() {
|
|
| 99 |
<input name="wp_paypal_widget_title_name" type="text" size="30" value="<?php echo esc_attr(get_option('wp_paypal_widget_title_name')); ?>"/>
|
| 100 |
<br /><i>This will be the title of the Widget on the Sidebar if you use it.</i><br />
|
| 101 |
</td></tr>
|
| 102 |
-
|
| 103 |
<tr valign="top"><td width="25%" align="left">
|
| 104 |
<strong>Paypal Email address:</strong>
|
| 105 |
</td><td align="left">
|
|
@@ -182,14 +188,14 @@ function paypal_payment_options_page() {
|
|
| 182 |
<input name="wp_pp_payment_value6" type="text" size="10" value="<?php echo esc_attr(get_option('wp_pp_payment_value6')); ?>"/>
|
| 183 |
<br /><i>Enter the name of the service or product and the price. eg. Enter "Basic service - $10" in the Payment Option text box and "10.00" in the price text box to accept a payment of $10 for "Basic service". Leave the Payment Option and Price fields empty if u don't want to use that option. For example, if you have 3 price options then fill in the top 3 and leave the rest empty.</i>
|
| 184 |
</td></tr>
|
| 185 |
-
|
| 186 |
<tr valign="top"><td width="25%" align="left">
|
| 187 |
<strong>Show Other Amount:</strong>
|
| 188 |
</td><td align="left">
|
| 189 |
<input name="wp_pp_show_other_amount" type="checkbox"<?php if (get_option('wp_pp_show_other_amount') != '-1') echo ' checked="checked"'; ?> value="1"/>
|
| 190 |
-
<i> Tick this checkbox if you want to show
|
| 191 |
</td></tr>
|
| 192 |
-
|
| 193 |
<tr valign="top"><td width="25%" align="left">
|
| 194 |
<strong>Show Reference Text Box:</strong>
|
| 195 |
</td><td align="left">
|
|
@@ -204,13 +210,24 @@ function paypal_payment_options_page() {
|
|
| 204 |
<br /><i>Enter a title for the Reference text box (ie. Your Web Address). The visitors will see this text.</i><br />
|
| 205 |
</td></tr>
|
| 206 |
|
| 207 |
-
<tr valign="top"
|
|
|
|
| 208 |
<strong>Return URL from PayPal:</strong>
|
| 209 |
</td><td align="left">
|
| 210 |
<input name="wp_pp_return_url" type="text" size="60" value="<?php echo esc_url(get_option('wp_pp_return_url')); ?>"/>
|
| 211 |
<br /><i>Enter a return URL (could be a Thank You page). PayPal will redirect visitors to this page after Payment.</i><br />
|
| 212 |
-
</td
|
| 213 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 214 |
</table>
|
| 215 |
|
| 216 |
<br /><br />
|
|
@@ -236,14 +253,18 @@ function paypal_payment_options_page() {
|
|
| 236 |
</table>
|
| 237 |
|
| 238 |
</div></div><!-- end of postbox -->
|
| 239 |
-
|
| 240 |
<div class="submit">
|
| 241 |
<input type="submit" class="button-primary" name="info_update" value="<?php _e('Update options'); ?> »" />
|
| 242 |
</div>
|
| 243 |
</form>
|
| 244 |
|
| 245 |
-
<div style="background: none repeat scroll 0 0 #FFF6D5;border: 1px solid #D1B655;color: #3F2502;margin: 10px 0;padding: 5px 5px 5px 10px;text-shadow: 1px 1px #FFFFFF;">
|
| 246 |
-
<p>
|
|
|
|
|
|
|
|
|
|
|
|
|
| 247 |
</p>
|
| 248 |
</div>
|
| 249 |
|
| 14 |
if(!current_user_can('manage_options')){
|
| 15 |
wp_die('You do not have permission to access this settings page.');
|
| 16 |
}
|
| 17 |
+
|
| 18 |
if (isset($_POST['info_update'])) {
|
| 19 |
$nonce = $_REQUEST['_wpnonce'];
|
| 20 |
if ( !wp_verify_nonce($nonce, 'wp_accept_pp_payment_settings_update')){
|
| 27 |
$value4 = filter_input(INPUT_POST, 'wp_pp_payment_value4', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 28 |
$value5 = filter_input(INPUT_POST, 'wp_pp_payment_value5', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 29 |
$value6 = filter_input(INPUT_POST, 'wp_pp_payment_value6', FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
|
| 30 |
+
|
| 31 |
+
update_option('wp_paypal_widget_title_name', sanitize_text_field(stripslashes($_POST["wp_paypal_widget_title_name"])));
|
| 32 |
update_option('wp_pp_payment_email', sanitize_email($_POST["wp_pp_payment_email"]));
|
| 33 |
update_option('paypal_payment_currency', sanitize_text_field($_POST["paypal_payment_currency"]));
|
| 34 |
+
update_option('wp_pp_payment_subject', sanitize_text_field(stripslashes($_POST["wp_pp_payment_subject"])));
|
| 35 |
+
update_option('wp_pp_payment_item1', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item1"])));
|
| 36 |
update_option('wp_pp_payment_value1', $value1);
|
| 37 |
+
update_option('wp_pp_payment_item2', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item2"])));
|
| 38 |
update_option('wp_pp_payment_value2', $value2);
|
| 39 |
+
update_option('wp_pp_payment_item3', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item3"])));
|
| 40 |
update_option('wp_pp_payment_value3', $value3);
|
| 41 |
+
update_option('wp_pp_payment_item4', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item4"])));
|
| 42 |
update_option('wp_pp_payment_value4', $value4);
|
| 43 |
+
update_option('wp_pp_payment_item5', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item5"])));
|
| 44 |
update_option('wp_pp_payment_value5', $value5);
|
| 45 |
+
update_option('wp_pp_payment_item6', sanitize_text_field(stripslashes($_POST["wp_pp_payment_item6"])));
|
| 46 |
update_option('wp_pp_payment_value6', $value6);
|
| 47 |
update_option('payment_button_type', sanitize_text_field($_POST["payment_button_type"]));
|
| 48 |
+
update_option('wp_pp_show_other_amount', isset($_POST['wp_pp_show_other_amount']) ? '1' : '-1' );
|
| 49 |
+
update_option('wp_pp_show_ref_box', isset($_POST['wp_pp_show_ref_box']) ? '1' : '-1' );
|
| 50 |
+
update_option('wp_pp_ref_title', sanitize_text_field(stripslashes($_POST["wp_pp_ref_title"])));
|
| 51 |
update_option('wp_pp_return_url', esc_url_raw(sanitize_text_field($_POST["wp_pp_return_url"])));
|
| 52 |
|
| 53 |
+
$cancel_url = esc_url_raw(sanitize_text_field($_POST["wp_pp_cancel_url"]));
|
| 54 |
+
if(empty($cancel_url)){
|
| 55 |
+
$cancel_url = home_url();
|
| 56 |
+
}
|
| 57 |
+
update_option('wp_pp_cancel_url', $cancel_url);
|
| 58 |
+
|
| 59 |
echo '<div id="message" class="updated fade"><p><strong>';
|
| 60 |
echo 'Options Updated!';
|
| 61 |
echo '</strong></p></div>';
|
| 66 |
?>
|
| 67 |
|
| 68 |
<div class=wrap>
|
| 69 |
+
<h2>Easy Accept Payments for PayPal Settings v<?php echo WP_PAYPAL_PAYMENT_ACCEPT_PLUGIN_VERSION; ?></h2>
|
| 70 |
|
| 71 |
+
<div id="poststuff"><div id="post-body">
|
| 72 |
|
| 73 |
<div style="background: none repeat scroll 0 0 #ECECEC;border: 1px solid #CFCFCF;color: #363636;margin: 10px 0 15px;padding:15px;text-shadow: 1px 1px #FFFFFF;">
|
| 74 |
For usage documentation and updates, please visit the plugin page at the following URL:<br />
|
| 75 |
<a href="https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120" target="_blank">https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120</a>
|
| 76 |
</div>
|
| 77 |
|
| 78 |
+
<form method="post" action="">
|
| 79 |
<?php wp_nonce_field('wp_accept_pp_payment_settings_update'); ?>
|
| 80 |
+
|
| 81 |
<input type="hidden" name="info_update" id="info_update" value="true" />
|
| 82 |
|
| 83 |
<div class="postbox">
|
| 84 |
<h3 class="hndle"><label for="title">Plugin Usage</label></h3>
|
| 85 |
+
<div class="inside">
|
| 86 |
+
<p>There are a few different ways you can use this plugin:</p>
|
| 87 |
<ol>
|
| 88 |
<li>Configure the options below and then add the shortcode <strong>[wp_paypal_payment]</strong> to a post or page (where you want the payment button)</li>
|
| 89 |
+
<li>Use the shortcode with custom parameter options to add multiple different payment widgets with different configuration.
|
| 90 |
+
<a href="https://www.tipsandtricks-hq.com/wordpress-easy-paypal-payment-or-donation-accept-plugin-120#shortcode_with_custom_parameters" target="_blank">View shortcode documentation</a></li>
|
| 91 |
<li>Call the function from a template file: <strong><?php echo Paypal_payment_accept(); ?></strong></li>
|
| 92 |
<li>Use the <strong>WP Paypal Payment</strong> Widget from the Widgets menu</li>
|
|
|
|
|
|
|
| 93 |
</ol>
|
| 94 |
</div></div>
|
| 95 |
|
| 105 |
<input name="wp_paypal_widget_title_name" type="text" size="30" value="<?php echo esc_attr(get_option('wp_paypal_widget_title_name')); ?>"/>
|
| 106 |
<br /><i>This will be the title of the Widget on the Sidebar if you use it.</i><br />
|
| 107 |
</td></tr>
|
| 108 |
+
|
| 109 |
<tr valign="top"><td width="25%" align="left">
|
| 110 |
<strong>Paypal Email address:</strong>
|
| 111 |
</td><td align="left">
|
| 188 |
<input name="wp_pp_payment_value6" type="text" size="10" value="<?php echo esc_attr(get_option('wp_pp_payment_value6')); ?>"/>
|
| 189 |
<br /><i>Enter the name of the service or product and the price. eg. Enter "Basic service - $10" in the Payment Option text box and "10.00" in the price text box to accept a payment of $10 for "Basic service". Leave the Payment Option and Price fields empty if u don't want to use that option. For example, if you have 3 price options then fill in the top 3 and leave the rest empty.</i>
|
| 190 |
</td></tr>
|
| 191 |
+
|
| 192 |
<tr valign="top"><td width="25%" align="left">
|
| 193 |
<strong>Show Other Amount:</strong>
|
| 194 |
</td><td align="left">
|
| 195 |
<input name="wp_pp_show_other_amount" type="checkbox"<?php if (get_option('wp_pp_show_other_amount') != '-1') echo ' checked="checked"'; ?> value="1"/>
|
| 196 |
+
<i> Tick this checkbox if you want to show other amount text box to your visitors so they can enter custom amount.</i>
|
| 197 |
</td></tr>
|
| 198 |
+
|
| 199 |
<tr valign="top"><td width="25%" align="left">
|
| 200 |
<strong>Show Reference Text Box:</strong>
|
| 201 |
</td><td align="left">
|
| 210 |
<br /><i>Enter a title for the Reference text box (ie. Your Web Address). The visitors will see this text.</i><br />
|
| 211 |
</td></tr>
|
| 212 |
|
| 213 |
+
<tr valign="top">
|
| 214 |
+
<td width="25%" align="left">
|
| 215 |
<strong>Return URL from PayPal:</strong>
|
| 216 |
</td><td align="left">
|
| 217 |
<input name="wp_pp_return_url" type="text" size="60" value="<?php echo esc_url(get_option('wp_pp_return_url')); ?>"/>
|
| 218 |
<br /><i>Enter a return URL (could be a Thank You page). PayPal will redirect visitors to this page after Payment.</i><br />
|
| 219 |
+
</td>
|
| 220 |
+
</tr>
|
| 221 |
+
|
| 222 |
+
<tr valign="top">
|
| 223 |
+
<td width="25%" align="left">
|
| 224 |
+
<strong>Cancel URL from PayPal:</strong>
|
| 225 |
+
</td><td align="left">
|
| 226 |
+
<input name="wp_pp_cancel_url" type="text" size="60" value="<?php echo esc_url(get_option('wp_pp_cancel_url')); ?>"/>
|
| 227 |
+
<br /><i>Enter a cancel URL. PayPal will redirect visitors to this page if they click on the cancel link.</i><br />
|
| 228 |
+
</td>
|
| 229 |
+
</tr>
|
| 230 |
+
|
| 231 |
</table>
|
| 232 |
|
| 233 |
<br /><br />
|
| 253 |
</table>
|
| 254 |
|
| 255 |
</div></div><!-- end of postbox -->
|
| 256 |
+
|
| 257 |
<div class="submit">
|
| 258 |
<input type="submit" class="button-primary" name="info_update" value="<?php _e('Update options'); ?> »" />
|
| 259 |
</div>
|
| 260 |
</form>
|
| 261 |
|
| 262 |
+
<div style="background: none repeat scroll 0 0 #FFF6D5;border: 1px solid #D1B655;color: #3F2502;margin: 10px 0;padding: 5px 5px 5px 10px;text-shadow: 1px 1px #FFFFFF;">
|
| 263 |
+
<p>
|
| 264 |
+
If you need a feature rich and supported plugin for accepting PayPal payment then check out our <a href="https://www.tipsandtricks-hq.com/wordpress-estore-plugin-complete-solution-to-sell-digital-products-from-your-wordpress-blog-securely-1059" target="_blank">WP eStore Plugin</a> (You will love the WP eStore Plugin).
|
| 265 |
+
</p>
|
| 266 |
+
<p>
|
| 267 |
+
Try our free <a href="https://wordpress.org/plugins/wp-express-checkout/" target="_blank">WP Express Checkout</a> plugin to sell your products using PayPal's Express Checkout API.
|
| 268 |
</p>
|
| 269 |
</div>
|
| 270 |
|
wpapp_paypal_utility.php
CHANGED
|
@@ -3,9 +3,9 @@
|
|
| 3 |
function wpapp_validate_paypl_ipn() {
|
| 4 |
|
| 5 |
$wpapp_ipn_validated = true;
|
| 6 |
-
|
| 7 |
// Reading POSTed data directly from POST causes serialization issues with array data in the POST.
|
| 8 |
-
// Instead, read raw POST data from the input stream.
|
| 9 |
$raw_post_data = file_get_contents('php://input');
|
| 10 |
$raw_post_array = explode('&', $raw_post_data);
|
| 11 |
$myPost = array();
|
|
@@ -14,7 +14,7 @@ function wpapp_validate_paypl_ipn() {
|
|
| 14 |
if (count($keyval) == 2)
|
| 15 |
$myPost[$keyval[0]] = urldecode($keyval[1]);
|
| 16 |
}
|
| 17 |
-
|
| 18 |
// read the IPN message sent from PayPal and prepend 'cmd=_notify-validate'
|
| 19 |
$req = 'cmd=_notify-validate';
|
| 20 |
if (function_exists('get_magic_quotes_gpc')) {
|
|
@@ -29,33 +29,27 @@ function wpapp_validate_paypl_ipn() {
|
|
| 29 |
$req .= "&$key=$value";
|
| 30 |
}
|
| 31 |
|
| 32 |
-
|
| 33 |
// Step 2: POST IPN data back to PayPal to validate
|
| 34 |
-
$
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
|
|
|
| 41 |
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
curl_close($ch);
|
| 45 |
-
exit;
|
| 46 |
-
}
|
| 47 |
-
curl_close($ch);
|
| 48 |
|
| 49 |
-
|
| 50 |
-
if (strcmp ($res, "VERIFIED") == 0) {
|
| 51 |
// The IPN is verified, process it
|
| 52 |
$wpapp_ipn_validated = true;
|
| 53 |
-
} else
|
| 54 |
// IPN invalid, log for manual investigation
|
| 55 |
$wpapp_ipn_validated = false;
|
| 56 |
}
|
| 57 |
|
| 58 |
-
|
| 59 |
if (!$wpapp_ipn_validated) {
|
| 60 |
// IPN validation failed. Email the admin to notify this event.
|
| 61 |
$admin_email = get_bloginfo('admin_email');
|
|
@@ -66,3 +60,49 @@ function wpapp_validate_paypl_ipn() {
|
|
| 66 |
exit;
|
| 67 |
}
|
| 68 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
function wpapp_validate_paypl_ipn() {
|
| 4 |
|
| 5 |
$wpapp_ipn_validated = true;
|
| 6 |
+
|
| 7 |
// Reading POSTed data directly from POST causes serialization issues with array data in the POST.
|
| 8 |
+
// Instead, read raw POST data from the input stream.
|
| 9 |
$raw_post_data = file_get_contents('php://input');
|
| 10 |
$raw_post_array = explode('&', $raw_post_data);
|
| 11 |
$myPost = array();
|
| 14 |
if (count($keyval) == 2)
|
| 15 |
$myPost[$keyval[0]] = urldecode($keyval[1]);
|
| 16 |
}
|
| 17 |
+
|
| 18 |
// read the IPN message sent from PayPal and prepend 'cmd=_notify-validate'
|
| 19 |
$req = 'cmd=_notify-validate';
|
| 20 |
if (function_exists('get_magic_quotes_gpc')) {
|
| 29 |
$req .= "&$key=$value";
|
| 30 |
}
|
| 31 |
|
|
|
|
| 32 |
// Step 2: POST IPN data back to PayPal to validate
|
| 33 |
+
$params = array(
|
| 34 |
+
'body' => $req,
|
| 35 |
+
'timeout' => 60,
|
| 36 |
+
'httpversion' => '1.1',
|
| 37 |
+
'compress' => false,
|
| 38 |
+
'decompress' => false,
|
| 39 |
+
'user-agent' => 'PayPal Donations Plugin/TTHQ'
|
| 40 |
+
);
|
| 41 |
|
| 42 |
+
$connection_url = 'https://www.paypal.com/cgi-bin/webscr';
|
| 43 |
+
$response = wp_safe_remote_post( $connection_url, $params );
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
|
| 45 |
+
if ( ! is_wp_error( $response ) && strstr( $response[ 'body' ], 'VERIFIED' ) ) {
|
|
|
|
| 46 |
// The IPN is verified, process it
|
| 47 |
$wpapp_ipn_validated = true;
|
| 48 |
+
} else {
|
| 49 |
// IPN invalid, log for manual investigation
|
| 50 |
$wpapp_ipn_validated = false;
|
| 51 |
}
|
| 52 |
|
|
|
|
| 53 |
if (!$wpapp_ipn_validated) {
|
| 54 |
// IPN validation failed. Email the admin to notify this event.
|
| 55 |
$admin_email = get_bloginfo('admin_email');
|
| 60 |
exit;
|
| 61 |
}
|
| 62 |
}
|
| 63 |
+
|
| 64 |
+
function wpapp_allowed_tags() {
|
| 65 |
+
$my_allowed = wp_kses_allowed_html( 'post' );
|
| 66 |
+
|
| 67 |
+
// form fields - input
|
| 68 |
+
$my_allowed['input'] = array(
|
| 69 |
+
'class' => array(),
|
| 70 |
+
'id' => array(),
|
| 71 |
+
'name' => array(),
|
| 72 |
+
'value' => array(),
|
| 73 |
+
'type' => array(),
|
| 74 |
+
'step' => array(),
|
| 75 |
+
'min' => array(),
|
| 76 |
+
'checked' => array(),
|
| 77 |
+
'size' => array(),
|
| 78 |
+
'readonly' => array(),
|
| 79 |
+
'style' => array(),
|
| 80 |
+
);
|
| 81 |
+
// select
|
| 82 |
+
$my_allowed['select'] = array(
|
| 83 |
+
'class' => array(),
|
| 84 |
+
'id' => array(),
|
| 85 |
+
'name' => array(),
|
| 86 |
+
'value' => array(),
|
| 87 |
+
'type' => array(),
|
| 88 |
+
);
|
| 89 |
+
// select options
|
| 90 |
+
$my_allowed['option'] = array(
|
| 91 |
+
'selected' => array(),
|
| 92 |
+
'value' => array(),
|
| 93 |
+
'data-product_name' => array(),
|
| 94 |
+
);
|
| 95 |
+
// button
|
| 96 |
+
$my_allowed['button'] = array(
|
| 97 |
+
'type' => array(),
|
| 98 |
+
'class' => array(),
|
| 99 |
+
'id' => array(),
|
| 100 |
+
'style' => array(),
|
| 101 |
+
);
|
| 102 |
+
// style
|
| 103 |
+
$my_allowed['style'] = array(
|
| 104 |
+
'types' => array(),
|
| 105 |
+
);
|
| 106 |
+
|
| 107 |
+
return $my_allowed;
|
| 108 |
+
}
|
