Tworzenie stron internetowych - poradnik
Aby napisać wtyczkę do WordPressa, potrzebujesz:
wp-content/plugins/nazwa-wtyczki/nazwa-wtyczki.php
. W tym pliku zdefiniujesz nagłówek wtyczki, który zawiera informacje takie jak jej nazwa, wersja i opis.init
, wp_head
) dostępnych w WordPressie, aby uruchamiać funkcje w odpowiednim momencie życia strony.wp_enqueue_script
lub wp_enqueue_style
.register_activation_hook
lub register_deactivation_hook
.Zacznijmy od stworzenia pliku głównego wtyczki. Plik ten powinien zawierać komentarz z informacjami o wtyczce, takimi jak nazwa, opis, wersja itp.
Następnie należy dodać odpowiednią deklarację wtyczki i funkcję inicjalizującą. Funkcja ta powinna zawierać kod, który będzie wykonywany podczas aktywacji wtyczki. Może to obejmować rejestrowanie funkcji obsługi zdarzeń lub tworzenie nowych tabel w bazie danych.
Oto przykład głównego pliku wtyczki:
<?php
/*
* Plugin Name: Nazwa Wtyczki
* Plugin URI: https://przykładowyadres.pl
* Description: Opis wtyczki
* Version: 1.0
* Author: Nazwisko Autora
* Author URI: https://przykładowyadres.pl
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
// Deklaracja wtyczki
function nazwa_wtyczki_init() {
// Kod, który ma zostać wykonany podczas aktywacji wtyczki
}
// Rejestrowanie funkcji inicjalizującej
register_activation_hook( __FILE__, 'nazwa_wtyczki_init' );
Jeżeli do działania naszej wtyczki potrzebne są dodatkowe pliki i skrypty, dodajemy je w następujący sposób:
function nazwa_wtyczki_scripts() {
// Ładowanie pliku JavaScript
wp_enqueue_script( 'nazwa-skryptu', plugin_dir_url( __FILE__ ) . 'js/nazwa-skryptu.js', array( 'jquery' ), '1.0.0', true );
// Ładowanie pliku CSS
wp_enqueue_style( 'nazwa-styli', plugin_dir_url( __FILE__ ) . 'css/nazwa-styli.css', array(), '1.0.0' );
}
add_action( 'wp_enqueue_scripts', 'nazwa_wtyczki_scripts' );
W tym przykładzie plik nazwa-skryptu.js
jest ładowany z katalogu js
w katalogu wtyczki, a plik nazwa-styli.css
jest ładowany z katalogu css
w katalogu wtyczki.
Pamiętaj, że musisz podać pełną ścieżkę do pliku, aby WordPress mógł go znaleźć. Możesz użyć funkcji plugin_dir_url()
do uzyskania adresu URL do katalogu wtyczki.
Jeżeli chcesz stworzyć tabelę w bazie danych za pomocą wtyczki, należy najpierw przygotować zapytanie SQL.
Następnie należy dodać kod wywołujący tę tabelę podczas aktywacji wtyczki. Możesz to zrobić za pomocą funkcji dbDelta()
, która jest częścią WordPressa i pozwala na bezpieczne tworzenie i modyfikowanie tabel w bazie danych.
Oto przykład kodu tworzącego tabelę podczas aktywacji wtyczki:
function nazwa_wtyczki_install() {
global $wpdb;
$table_name = $wpdb->prefix . 'nazwa_tabeli';
$charset_collate = $wpdb->get_charset_collate();
$sql = "CREATE TABLE $table_name (
id mediumint(9) NOT NULL AUTO_INCREMENT,
time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
name tinytext NOT NULL,
text text NOT NULL,
url varchar(55) DEFAULT '' NOT NULL,
PRIMARY KEY (id)
) $charset_collate;";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $sql );
}
register_activation_hook( __FILE__, 'nazwa_wtyczki_install' );
W tym przykładzie tworzymy tabelę o nazwie nazwa_tabeli
z kilkoma kolumnami. Funkcja dbDelta()
porównuje zapytanie SQL z istniejącymi tabelami w bazie danych i wykonuje odpowiednie zapytania, aby dostosować bazę danych do wymagań wtyczki.
Pamiętaj, że należy używać tej funkcji tylko podczas aktywacji wtyczki lub aktualizacji, ponieważ jej wywołanie podczas każdego ładowania strony może prowadzić do spowolnienia witryny.