Advertisement
  1. Code
  2. WordPress

Tworzenie Przycisku PayPal "Kup Teraz" Przy Użyciu Skrótu.

Scroll to top
Read Time: 5 min

() translation by (you can also view the original English article)

PayPal jest metodą płatności, która pozwala każdemu na wysłanie Ci pieniędzy. Pieniądze te, możesz w prosty sposób wysłać na swoje konto w banku. W tym kursie, dowiesz się jak utworzyć wtyczkę do WordPress pozwalającą na wygenerowanie przycisku "Kup Teraz" przy użyciu skrótu.

Domyślny skrót będzie posiadał wartość $50 oraz rozmiar Large. Domyślne wartości będziesz mógł zmienić za każdym razem gdy użyjesz skrótu.

Zaczynamy!

1. Inicjalizacja Wtyczki

Krok 1

Utwórz nowy folder w wp-content/plugins, nazwij go paypal-buy-now-button-shortcode, oraz utwórz w nim plik paypal-buy-now-button-shortcode.php.

Krok 2

WordPress musi wiedzieć że jest to wtyczka więc musimy dodać kilka informacji do nagłówka naszego nowego pliku PHP.

1
<?php
2
/**

3
 * Plugin Name: PayPal Buy Now Button Shortcode

4
 * Plugin URI: https://www.samberson.com

5
 * Description: A simple PayPal Buy Now button plugin with shortcode.

6
 * Version: 1.0.0

7
 * Author: Sam Berson

8
 * Author URI: http://www.samberson.com

9
 * License: GPL-3.0+

10
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html

11
 * Domain Path: /lang

12
 * Text Domain: paypal-buy-now-button-shortcode

13
 */

2. Tworzymy skrót

Krok 1

Teraz utworzymy funkcję z argumentem, nazwiemy ją paypal_buy_now_shortcode( $atts ).

1
/**

2
 * Generates the markup for the shortcode on the public site.

3
 */
4
function paypal_buy_now_shortcode( $atts ) {

Krok 2

Teraz utworzymy opcję naszej nowej wtyczki oraz dodamy tablicę zawierającą domyślne atrybuty skrótu.

1
$options = get_option( 'paypal_buy_now_options' );
2
3
$atts = shortcode_atts(
4
array(
5
        'amount' => '50',
6
        'currency' => 'USD',
7
        'size' => 'LG'
8
    ),
9
    $atts
10
);
11
12
extract( $atts );

Krok 3

Teraz zajmiemy się, częścią widoczną dla odwiedzających twoją stronę. Będzie to standardowy kod HTML z dodatkami PHP, które przejmą dane z formularza takie jak PayPal ID, kwota, waluta oraz wielkość przycisku. Dodatkowo zamkniemy funkcję, którą rozpoczęliśmy wcześniej.

1
return '<form action="https://www.paypal.com/cgi-bin/webscr" method="post">

2
                <div class="paypal-donations">

3
                    <input type="hidden" name="cmd" value="_xclick">

4
                    <input type="hidden" name="business" value="' . $options['paypal_user_id'] . '">

5
                    <input type="hidden" name="amount" value="' . $amount . '">

6
                    <input type="hidden" name="rm" value="0">

7
                    <input type="hidden" name="currency_code" value="' . $currency . '">

8
                    <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynow_' . $size . '.gif" name="submit" alt="' . __( 'PayPal - The safer, easier way to pay online.', 'paypal-buy-now-button-shortcode' ) . '">

9
                    <img alt="" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">

10
                </div>

11
            </form>';
12
13
}

Krok 4

Na końcu dokonamy inicjalizacji funkcji jako skrótu poprzez użycie funkcji add_shortcode(), która jest wbudowana w WordPressa. Po prostu, mówimy że nasz skrót będzie wyglądał tak: [buy_now] oraz będzie używał funkcji: paypal_buy_now_shortcode

1
add_shortcode( 'buy_now', 'paypal_buy_now_shortcode' );

3. Dodajemy więcej funkcji

Krok 1

Dodajmy funkcję paypal_buy_now_user_id wraz z jej opcjami, co pozwoli na wyświetlenie pola input w panelu administratora.

1
/**

2
 * Generates the markup for the PayPal user id.

3
 */
4
function paypal_buy_now_user_id() {
5
6
$options = get_option( 'paypal_buy_now_options' );
7
8
    echo "<input name='paypal_buy_now_options[paypal_user_id]' type='email' value='{$options['paypal_user_id']}'/>";
9
}

Krok 2

Przy użyciu funkji paypal_buy_now_register_settings, będziemy rejestrować wszystkie ustawienia oraz zastąpimy je odpowiednimi danymi. W tym przypadku rejestrujemy ustawienia, dodajemy sekcję ustawień oraz inicjalizujemy pole PayPal Id.

1
/**

2
 * Registers settings page and fields.

3
 */
4
function paypal_buy_now_register_settings() {
5
6
register_setting( 'paypal_buy_now_settings', 'paypal_buy_now_options' );
7
8
    add_settings_section( 'paypal_buy_now_section', '', null, __FILE__ );
9
10
    add_settings_field( 'paypal_user_id', __( 'PayPal Id', 'paypal-buy-now-button-shortcode' ),'paypal_buy_now_user_id', __FILE__, 'paypal_buy_now_section' );
11
}

Krok 3

Podobnie do tego co zrobiliśmy wcześniej z inicjalizacją skrótu, teraz dodamy funkcję paypal_buy_now_register_settings jako akcję do panelu administratora.

1
add_action( 'admin_init', 'paypal_buy_now_register_settings' );

4. Opcje HTML Administratora

Krok 1

Funkcja paypal_buy_now_options_page pozwoli nam na dodanie kodu HTML aby poprawnie wyświetlić formularz w systemie. Po dodaniu kodu, utworzymy strukture HTML rozpoczynającą się od div oraz h2, oraz utworzy formularz z polami zainicjalizowanymi wcześniej.

1
/**
2
 * Generates the markup for the options page.
3
 */
4
function paypal_buy_now_options_page() {
5
6
?>
7
    <div class="wrap">
8
        <h2><?php _e( 'PayPal Buy Now Shortcode Settings', 'paypal-buy-now-button-shortcode' ); ?></h2>
9
        <form method="post" action="options.php" enctype="multipart/form-data">
10
            <?php

11


12
            settings_fields( 'paypal_buy_now_settings' );

13


14
            do_settings_sections( __FILE__ );

15


16
            ?>
17
            <p class="submit">
18
                <input type="submit" class="button-primary" name="submit" value="<?php _e( 'Save Changes', 'paypal-buy-now-button-shortcode' ); ?>">
19
            </p>
20
        </form>
21
    </div>
22
    <?php
23
24
}

Krok 2

Funkcja paypal_buy_now_add_settings_menu pozwoli na utworzenie nowego menu lub strony w systemie, oraz zdefiniowanie nazw które zostaną wyświetlone.

1
/**

2
 * Adds menu item to the settings.

3
 */
4
function paypal_buy_now_add_settings_menu() {
5
6
$title = __( 'PayPal Buy Now Shortcode', 'paypal-buy-now-button-shortcode' );
7
8
    add_options_page( $title, $title, 'administrator', __FILE__, 'paypal_buy_now_options_page');
9
}
10
11
add_action( 'admin_menu', 'paypal_buy_now_add_settings_menu' );

5. Używanie Wtyczki

Skoro już mamy gotowy plugin, pojawia się pytanie... jako go używać? Odpowiedź jest banalnie prosta.

Krok 1

Jeśli użyjesz samego skrótu tak jak poniżej, zobaczysz duży przycisk po kliknięciu którego wyślesz kwotę $50 USD.

1
[buy_now]

Krok 2

Możesz użyć atrybutu aby zmienić przycisk. Na przykład możesz zmienić wielkość przycisku poprzez zmianę rozmiaru na ('SM') lub ('LG').

1
[buy_now size=LG]

Krok 3

Waluta możę zostać ustawiona na każdą obsługiwaną przez PayPal walutę, np. PLN

1
[buy_now currency=PLN size=LG]

Krok 4

Na końcu, musimy ustalić kwotę tranzakcji w zapisie numerycznym np. 100 lub 40. Należy pamiętać aby dołączyć symbol waluty.

1
[buy_now amount=150 currency=PLN size=LG]

Krok 5

Ostatnim ważnym elementem na który należy zwrócić uwagę jest to, że dzięki domyślnym ustawieniom, nie musimy zmieniać całego przycisku za każdym razem gdy chcemy go użyć; zmieniamy tylko to co musimy.

Podsumowanie

To tyle ! Właśnie utworzyliśmy nową wtyczkę, która pozwala na dodanie przycisku PayPal poprzez skrót. Jeśli masz pytania, napisz je w komentarzu poniżej !

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.