Samle inn donasjoner med WordPress PayPal

I den første delen av denne mini-serien med tittelen "Samle inn donasjoner med WordPress", lærer du hvordan du skriver et WordPress-plugin som lar brukere sende deg en donasjon via PayPal. Pluggen bruker sitt eget backend-innstillingspanel, og er svært tilpassbart. Så, la oss komme i gang!

Initialisering av plugin

Trinn 1

I wp-innhold / tillegg katalog på nettstedet ditt, opprett en ny mappe som heter paypal-donasjoner.

Steg 2

Nå, i den mappen, opprett en fil som heter paypal-donations.php.

Trinn 3

Til slutt må du legge til informasjon om pluginhode, som vil fortelle WordPress at det nye pluginet ditt faktisk finnes på serveren din. Du kan endre disse detaljene til det du ønsker, selv om de vanligvis bør være i den rekkefølge med minst den informasjonen.

Trinn 4

Nå ser du det nye pluginet dukker opp i plugins siden av WordPress admin. Gå videre og Aktiver Plugin, selv om du ikke ser mye som skjer akkurat ennå.

Legge til kortnummeret

Du vil kunne donere knappen ved å bruke en enkel kortkode i alle innlegg eller sider du oppretter. I hovedsak er en kortkode et lite stykke tekst, pakket inn i firkantede parenteser, som lar deg ringe hvilken som helst funksjon eller handling fra et plugin eller tema i Postredigereren.

I dette pluginet vil kortnummeret være, [donere], og dette kan legges hvor som helst i dine innlegg eller sider.

Trinn 1

For å legge til shortcode til WordPress, må du bruke add_shortcode funksjon, og innenfor den, definer hva kortnummeret vil være (i dette tilfellet, donér), og deretter definerer du skjemafeltene for donateknappen og bildeinformasjonen for knappen.

// legger til [donate] shortcode add_shortcode ('donate', funksjon () $ donate_options = get_option ('donate_plugin_options'); // Deafult Button Image $ url = 'images_13 / samle-donasjoner-med-wordpress-paypal_2.gif' ; // Kontrollerer hvilken bilde å bruke bryter ($ donate_options ['button']) case 'small': $ url = 'images_13 / collecting-donations-with-wordpress-paypal_2.gif'; $ url = 'images_13 / collecting-donations-with-wordpress-paypal_3.gif'; pause; sak 'stor': $ url = 'images_13 / collecting-donations-with-wordpress-paypal_4.gif';
'; );

Steg 2

På dette stadiet kan du legge til den nye kortnummeret til et innlegg eller en side, selv om det ikke ser helt riktig ut, og vil sannsynligvis kaste opp noen feil på nettstedet ditt.

Tilbakeringinger og skjemafunksjoner

Du definerer nå tilbakeringingene som kreves for å gjøre plugin-arbeidet, samt skjemaet for innstillingspanelet i WordPress-admin.

Trinn 1

Du bør nå legge til en tom tilbakeringing, som er nødvendig for å sikre at plugin fungerer riktig. Det er bare å definere en ny WordPress-funksjon, åpne den, og deretter lukke den igjen.

funksjon donate_plugin_cb () // Valgfri tilbakeringing

Steg 2

Deretter skal du legge til en funksjon som genererer og skriver inn felt i administrasjonsformularen for PayPal-e-postadressen din.

// Generer INPUT Felt skjema form innstillinger [EMAIL] funksjon paypal_user_id_html () $ donate_options = get_option ('donate_plugin_options'); ekko "";

Trinn 3

Nå genererer du et inntastingsfelt for admin-innstillingene med radioknapper, slik at du kan velge hvilken søkeknapp du vil ha - mer om det senere.

// Generer INPUT Felt skjema form innstillinger [RADIO] funksjon paypal_donation_button_html () $ donate_options = get_option ('donate_plugin_options'); ?> 

Trinn 4

Til slutt genererer vi et annet inntastingsfelt med mange nedfellingselementer, slik at du kan velge valutaen der PayPal-donasjonene dine blir behandlet, ved å legge til en PHP-array.

// Generer INPUT Felt skjema skjema innstillinger [DROPDOWN] funksjon paypal_currency_html () $ donate_options = get_option ('donate_plugin_options'); $ valuta = array ('AUD' => 'Australske dollar (A $)', 'BRL' => 'Brasilian Real', 'CAD' => 'Kanadiske dollar (C $)', 'CZK' => 'Tsjekkisk $ '', 'HKD' => 'Hongkong Dollar ($)', 'HUF' => 'Ungarn Forint', 'Hong Kong Dollar' ILS '=>' Israelisk Ny Shekel ',' JPY '=>' Yen (¥) ',' MYR '=>' Malaysisk Ringgit ',' MXN '=>' Meksikansk Peso ',' NOK '=>' Norsk Krone ',' NZD '=>' New Zealand Dollar ($) ',' PHP '=>' Filippinsk Peso ',' PLN '=>' Polsk Zloty ',' GBP '=>' Pund Sterling (£) ',' RUB '=>' Russisk rubel ',' SGD '=>' Singapore Dollar ($) ',' SEK '=>' Svensk Krona ',' CHF '=>' Sveitsisk Franc ',' TWD '=>' Taiwan Ny Dollar ',' THB '=>' Thai Baht ',' TRY '=>' Tyrkisk Lira ',' USD '=>' Amerikanske dollar ($) '); ?>  

Hooking It All Up

Nå har du generert kortnummer og skjemafelter, du må koble den til WordPress-admin, slik at plugin er funksjonell.

Trinn 1

La oss begynne med å registrere alle innstillingene, og deres felt med WordPress, og deretter legge til handlingen til administrasjonen.

// Registrer alle innstillinger og innstillingsfelt som brukt i wordpress-funksjonen register_settings_and_fields () // $ option_group, $ option_name, $ sanitize_callback register_setting ('donate_plugin_options', 'donate_plugin_options'); // $ id, $ title, $ callback, $ side add_settings_section ('donate_plugin_main_section', 'Hovedinnstillinger', 'donate_plugin_cb', __FILE__); // $ id, $ title, $ callback, $ side, $ section, $ args add_settings_field ('paypal_user_id', 'PayPal ID:', 'paypal_user_id_html', __FILE__, 'donate_plugin_main_section'); // $ id, $ title, $ callback, $ side, $ section, $ args add_settings_field ('button', 'Select Button:', 'paypal_donation_button_html', __FILE__, 'donate_plugin_main_section'); // $ id, $ title, $ callback, $ side, $ section, $ args add_settings_field ('valuta', 'Valuta:', 'paypal_currency_html', __FILE__, 'donate_plugin_main_section');  add_action ('admin_init', 'register_settings_and_fields');

Steg 2

Du skal nå generere HTML-en for hovedalternativer-siden i WordPress, ved å sette opp en div med klassen av pakke inn, og deretter åpne skjemaet og importere innstillingsfeltene.

// Generer HTML av hovedalternativer sidefunksjon options_page_html () ?> 

Plugin Options

Trinn 3

Deretter legger du til plugininnstillingssiden i WordPress admin, ved å bruke options_init () funksjon, sammen med add_options_page funksjon.

// Admin Meny Handling Hook funksjonen options_init () // page_title, menu_title, ability, menu_slug, funksjon add_options_page ('Doner Plugin Options', 'Donate Plugin Options', 'administrator', __FILE__, 'options_page_html');  add_action ('admin_menu', 'options_init');

Trinn 4

Det aller siste skrittet er å legge til aktiveringskroken, og for å kontrollere om innstillingene allerede eksisterer. Hvis de gjør det, bra - hvis ikke, vil pluginet registrere standardinnstillingene.

// Aktiveringskrok. Sjekk om innstillingene finnes, hvis ikke registrer standardinnstillinger. funksjon donate_activate () $ defaults = array ('paypal_user_id' => get_option ('admin_email'), 'knapp' => 'liten', 'valuta' => 'USD'); hvis (get_option ('donate_plugin_options')) returnere; add_option ('donate_plugin_options', $ standardinnstillinger);  register_activation_hook (__FILE__, 'donate_activate');

Endelig kildekode

Din plugin skal nå være fullt funksjonell, ved å legge til [donere] shortcode til dine innlegg eller sider! Her er full kildekode for plugin:

 
'; ); funksjon donate_plugin_cb () // Valgfri tilbakeringing // Generer INPUT Felt skjema skjema innstillinger [EMAIL] funksjon paypal_user_id_html () $ donate_options = get_option ('donate_plugin_options'); ekko ""; // Generer INPUT Felt skjema form innstillinger [RADIO] funksjon paypal_donation_button_html () $ donate_options = get_option ('donate_plugin_options');?>

'Australske dollar (A $)', 'BRL' => 'Brasilian Real', 'CAD' => 'Kanadiske dollar (C $)', 'CZK' => 'Tsjekkisk Koruna', 'DKK' => 'Dansk Krone ',' EUR '=>' Euro (€) ',' HKD '=>' Hongkong Dollar ($) ',' HUF '=>' Ungarsk Forint ',' ILS '=>' Israelisk Ny Shekel ' 'JPY' => 'Yen (¥)', 'MYR' => 'Malaysisk Ringgit', 'MXN' => 'Meksikansk Peso', 'NOK' => 'Norsk Krone', 'NZD' => 'New Zealand Dollar ($) ',' PHP '=>' Filippinsk Peso ',' PLN '=>' Polsk Zloty ',' GBP '=>' Pund Sterling (£) ',' RUB '=>' Russisk Ruble ' SGD '=>' Singapore Dollar ($) ',' SEK '=>' Svensk Krona ',' CHF '=>' Sveitsisk Franc ',' TWD '=>' Taiwan Ny Dollar ',' THB '=>' Thai Baht ',' TRY '=>' Tyrkisk lire ',' USD '=>' US Dollar ($) ',); ?>

Plugin Options

get_option ('admin_email'), 'button' => 'liten', 'valuta' => 'USD'); hvis (get_option ('donate_plugin_options')) returnere; add_option ('donate_plugin_options', $ standardinnstillinger); register_activation_hook (__FILE__, 'donate_activate');

Oppsummert

Du har nå lært hvordan du utvikler en helt ny plugin, som lar brukerne donere via PayPal. Du kan nå initialisere et plugin, bruke kortkoder, og legge til en innstillingsside for WordPress admin.

I den neste og siste delen av denne mini-serien lærer du hvordan du skriver et lignende plugin, slik at brukerne kan donere ved hjelp av Bitcoins, i stedet for en vanlig valuta med PayPal.

Hvis du har spørsmål, vær så snill å legge igjen en kommentar nedenfor, og jeg vil være sikker på å hjelpe deg!