Podstawy tworzenia pluginu w wordpress

Do utworzenia najprostszego pluginu potrzebujemy tylko jednego pliku php, który powinien być nazwany tak jak plugin. W przypadku, gdy używamy tylko jednego pliku, wystarczy umieścić go w folderze plugins, w przeciwnym razie należy stworzyć osobny folder o nazwie identycznej, co znajdujący się wewnątrz, główny plik php.
Na początku, za pomocą komentarza blokowego, podajemy informacje odnośnie pluginu, które zostaną zaczytane przez wordpress automatycznie.
Musimy też uchronić się przed próbą bezpośredniego dostępu do pliku, dlatego dodajemy instrukcję, która zaprzestanie działania pluginu, jeśli ktoś spróbuje odnieść się do niego bezpośrednio.
Na początek tworzę nowy folder wewnątrz C:\xampp\htdocs\wp\wp-content\plugins o nazwie pika-first-plugin, a wewnątrz niego plik pika-first-plugin.php
Poniżej wstępna treść pluginu, która zawiera 2 jednakowe instrukcje sprawdzające zapisane w nieco odmienny sposób. Oczywiście domyślnie, zostawiamy jedną z nich, tutaj pokazujemy tylko z czym możecie się spotkać.

<?php
/*
Plugin Name: Pika First Plugin
Description: Nasz pierwszy plugin
Author: pikademia
Version: 1.0.0
Author URI: https://pikademia.pl
*/

if ( !defined( 'ABSPATH' ) ) {
    exit; 
}

// other syntax
if(!defined( 'ABSPATH' ) ) : exit(); endif;

Po tym zabiegu, plugin zostaje wykryty przez WordPress i możemy go włączyć.

Tworzenie stałych z adresem/ścieżką do pluginu

Warto dodać sobie stałą z adresem naszego pluginu, ponieważ w dalszej części, często będziemy chcieli odnosić się do lokalizacji folderu z pluginem, który tworzymy:

define ('PIKA_FIRST_PLUGIN_PATH', trailingslashit( plugin_dir_path(__FILE__) )); 
// C:\xampp\htdocs\wp\wp-content\plugins\pika-first-plugin/

// będziemy też potrzebowali adresu, ponieważ w wielu przypadkach PATH nie zadziała
define ('PIKA_FIRST_PLUGIN_URL', trailingslashit( plugins_url('/',__FILE__) )); 
// http://localhost/wp/wp-content/plugins/pika-first-plugin/

Struktura plików, dołączanie plików

W bardzo prostym pluginie nie trzeba dodawać kolejnych folderów i plików, ale jeśli planujemy bardziej złożony plugin, to z pewnością będziemy chcieli dodać odpowiednią strukturę folderów i plików. W procesie tym, będziemy osobno dodawać i stylizować sekcje ze względu na to , czy ma się to odnosić do zaplecza admin czy do strony użytkownika. Różne pliki możemy dodać w następujący sposób z uwzględnieniem admin-public.
Oczywiście, aby odnieść się do tych plików, należy je stworzyć 😉

if(is_admin()){
    require_once PIKA_FIRST_PLUGIN_PATH.'/admin/admin.php';
}
if(!is_admin()){
    require_once PIKA_FIRST_PLUGIN_PATH.'/public/public.php';
}

Dodawanie styli i skryptów do pluginu

Wraz z pluginem zapewne będziemy dodawać treści, które pomogą wyświetlać elementy na stronie (public) lub w zapleczu admin. W tym celu musimy dołączyć style css lub funkcje js. Należy stworzyć odpowiednie pliki i dołączyć do projektu, za pomocą poniższych poleceń. Możemy stworzyć do plików css i js osobne foldery, ale nie musimy.

Plik admin.php

<?php
function pika_first_plugin_admin_styles_scripts(){
    wp_enqueue_style('pika-first-plugin-admin-style',PIKA_FIRST_PLUGIN_URL.'admin/admin.css','',rand());
    wp_enqueue_script('pika-first-plugin-admin-script',PIKA_FIRST_PLUGIN_URL.'admin/admin.js', array('jquery'),rand(), true );
}
add_action('admin_enqueue_scripts','pika_first_plugin_admin_styles_scripts');

Plik public.php

<?php
function pika_first_plugin_public_styles_scripts(){
    wp_enqueue_style('pika-first-plugin-public-style',PIKA_FIRST_PLUGIN_URL.'public/public.css','',rand());
    wp_enqueue_script('pika-first-plugin-public-script',PIKA_FIRST_PLUGIN_URL.'public/public.js', array('jquery'),rand(), true );
}
add_action('wp_enqueue_scripts','pika_first_plugin_public_styles_scripts');

Plik admin.js public.js

;(function($){
    "use strict";
    console.log('Test info');
})(jQuery);
Przewiń do góry