Posts Tagged programowanie

Tworzenie pluginów do wordpress’a od podstaw

Ostatnio miałem ciekawe zlecenie, miałem za zadanie napisać agregator newsów, oparty na stronach wordpress’a tworzonych w opcji multisite. Postanowiłem więc zabrać się za napisanie do tego celu małego pluginu. I choć szczerze mówiąc słowo plugin nigdy jakoś na mnie dobrze nie działało, to zabawa we „wtyczkowanie” wordpressa była naprawdę przyjemna.

Pisanie samego pluginu jest dość proste, wystarczy do tego celu znać PHP’a i mieć opanowane podstawowe zasady tworzenia plugnów. Zacznijmy od ustawień. Wszystkie pluginy jakich używamy powinny się znajdować w katalogu wp-content/plugins. W zależności od tego jak bardzo złożony będzie nasz program możemy stworzyć katalog i nazwać tak samo plik znajdujący się w nim, który będzie dla nas czymś w rodzaju dispatchera, lub po prostu stworzyć plik php w którym będzie nasz kod.

W zależności od tego jakiej opcji użyliśmy w pliku startowym kilka pierwszych linijek powinno wyglądać w ten sposób:

<?php
/**
* @package Nazwa paczki
* @version 0.1
*/
/*
Plugin Name: Nazwa pluginu
Description: Opis, czyli czym twój plugin będzie się zajmował
Author: Twoje Imię i Nazwisko
Version: 0.1
*/
?>

Kodu tłumaczyć chyba nie trzeba, nazwa paczki, opis, twoje imię i nazwisko no i wersja pluginu to wszystko czego potrzebujemy. Więcej informacji na ten temat można znaleźć w opisie z dokumentacji wordpress. Od tej pory plugin (jeśli znajduje się w katalogu wordpressa) powinien być widoczny we wtyczkach. Wszystko bardzo fajnie tylko… No właśnie, tak naprawdę nasz plugin nic jeszcze nie robi :)

Działanie pluginu polega na wywoływaniu funkcji naszego kodu w wywołanych przez Ciebie miejscach. I tak, żeby zadeklarować jakieś działanie, musimy użyć za każdym razem funkcji add_action. Pisząc na końcu w naszym kodzie np. add_action(‘loop_end’, ‘nazwa_naszej_funkcji’); wywołamy zaraz po akcji loop_end (czyli pod koniec wypisywania treści postów / strony) funkcję o nazwie nazwa_naszej_funkcji. Wszystko jak widać jest dość proste i wystarczą tak naprawdę podstawy PHP by napisać prosty plugin. Wszystkie akcje jakie możemy wywołać, a jest ich dość sporo, znajdziemy w dokumentacji.

Nie należy też zapominać o bazie danych. W wordpress za bazę danych odpowiada zmienna globalna $wpdb, którą w każdej funkcji wystarczy wywołać za pomocą global $wpdb; Nie mam jednak zamiaru rozpisywać się na ten temat za dużo, bo całość została pięknie opisana w dokumentacji do której odsyłam was po raz setny, a to dlatego że nie tylko są to oficjalne informacje, ale też dlatego że wordpress codex jest pisany bardzo prostym i przejrzystym językiem, pomimo że angielskim.

Życzę wszystkim szybkiego, lekkiego i przyjemnego pisania waszych własnych pluginów. To naprawdę proste :-)

Read the rest of this entry »

Tags: , ,

Nowy design. Nowy projekt.

Ostatnio jestem bardzo zajęty swoimi projektami i nie miałem czasu na bloga. Czas na zmiany. Nowy design i nowy wpis. Nie obiecam że będę częściej pisał, ale postaram się przynajmniej pisać o moim obecnym projekcie – grze przeglądarkowej. No, cóż ostatnio postanowiłem pobawić się w wariata i stworzyć grę RPG, na bazie przeglądarki internetowej. Pierwsze co przychodzi na myśl to „to się nie może udać”, jednakże po kilku tygodniach udało mi się zebrać praktycznie całą ekipę. Jest grafik 3d, rysowniczka, no i oczywiście ja człowiek orkiestra, zwany rzadziej programistyczną mendą ;-) Nasza gra broswerowa będzie w założeniu nieco podobna do Mass Effect, z tym że nie będzie w nim ludzi, a gracz będzie musiał wcielić się w postać jednej z 4 dostępnych ras: Ariana, Xaksa, Erdianina, Pegana. Rasy różnią się między sobą, zachowaniami i przekonaniami, czasem może to prowadzić do wywołania wojen, ale to wszystko będziecie mogli przeżyć już, kiedy projekt będzie gotowy.

Oczywiście, przeglądarka wymaga wielu wyrzeczeń jeśli nie chce się stosować ani Unity ani Flasha. Ja jednak traktuję to jak wyzwanie, pozwalające użyć wielu nie standardowych rozwiązań, jak choćby innowacyjny model walki czy wydawanie codziennie gazety, która będzie generowała nam zadania do wykonania, które często nie będą przekazane zbyt wyraźnie i tylko niektórzy wpadną na to, że coś można było zrobić.

To, na co pozwala gra webowa i na czym mi zależy to gra w stylu WEB 2.0. Użytkownicy swoimi działaniami mogliby tworzyć fabułę, tak by mieć wpływ na rozwój świata. Mobki mogłyby używać sztucznej inteligencji, wymyślając zadania i wprowadzając możliwość prowadzenia dowolnej rozmowy. Są to jednak ambitne plany na przyszłość i chcę się trzymać tego co jest możliwe na dzień dzisiejszy.

O projekcie będę pisał na bieżąco. Wydaje mi się że to całkiem fajny temat :-)

Tags: ,

Witaj świecie. Podstawy Unity.

Witam w pierwszej części mojego live show, show, show w którym będę uczył się razem z wami Unity. Dziś zajmiemy się przygotowaniem sobie odpowiedniego środowiska, pobraniem go, konfiguracją i powitamy nowy świat wstawieniem helikoptera. Zaczynamy.

Na początek musimy zdecydować się na platformę. Nie wiele silników gier daje możliwość tworzenia gier na mac’u, ale ponieważ Unity jest frameworkiem działającym na Open GL można go stosować wszędzie. Ja będę używał swojego starego, dobrego jabłuszka, ale tak naprawdę środowiska nie różnią się niczym. Unity daje nam obecnie 3 możliwości darmowego tworzenia gier (oczywiście pod warunkiem że nie nasza firma nie zarabia więcej niż 100K bo to już by naruszało licencję) – gry na PC, gry na mac’a oraz gry na iPhone. Swoją drogą jestem ciekawy jak wygląda sprawa z Nintendo Wii (licencja płatna).

Obrazek 1

Nie chcąc jednak zbytnio odbiegać od tematu, ja swoją zabawę zaczynam od podstaw – gier na Mac’a i PC. Aby zacząć cokolwiek, należy pobrać narzędzie ze strony producenta. Tu niczego chyba wyjaśniać nie trzeba, podajemy maila, rejestrujemy licencję, wszystko jest proste jak dla osoby która w ogóle zdecydowała się bawić w tworzenie gry. Zainstalowane? Czas poznać pewne mankamenty programu. Niekiedy, gdy długo pracujemy Unity zjada dużą ilość pamięci. Jeśli naprawdę widać że wszystko chodzi bardzo wolno należy zapisać projekt, i zresetować program (włączyć i wyłączyć) poza pamięcią Unity potrafi też podobno zjadać miejsce na dysku. Tego nie wiem, ale trzeba na to uważać. No dobra, to wszystko co do instalacji i podstawowego wprowadzenia. Czas zacząć działać. Read the rest of this entry »

Tags: , , ,

Webmasterze, czy wiesz że umiesz tworzyć gry?

Jesteś webdeveloperem? Lubisz grać w gry komputerowe? Znasz grafika 3D i animatora? Chciałbyś zaprogramować grę komputerową? Teraz masz taką szansę!

overview-broad

Unity to silnik do tworzenia gier komputerowych, bazujący na kilku językach skrypotwych. Jednym z nich jest JavaScript. Framework’a tego poznałem wczoraj, na dniu przedsiębiorczości, w Rhema Press, firmie która zajmuje się tworzeniem gier profesjonalnie. Jeśli jesteś twórcą aplikacji internetowych to jak zapewne się domyślasz, że tworzenie kodu dla Unity nie powinno sprawić Ci większych kłopotów. Jak dla mnie było to dość duże zdziwienie, co prawda jedyne co do tej pory zaprogramowałem to włączenie dźwięku piły podczas piłowania, ale API Unity jest na tyle proste że nikt nie powinien mieć z nim problemów. W internecie można znaleźć też forum, i masę videotutoriali, czyli bardzo duże wsparcie dla tego środowiska.

Dzisiaj bawiłem się w podstawy silnika. Zrobiłem scenę z użytymi obiektami GUI i ogniem, po czym podpiąłem do tego muzykę. Wszystko ładnie pięknie działa a zajęło mi to bardzo mało czasu. Teraz chcę zrobić symulator LOST’owego dymka, czyli taką grę testową, która pozwala Ci chodzić lewitując ogniem czarnego koloru. Polecam wszystkim zabawę z Unity, bo jestem nim bardziej zachwycony niż genialnością jQuery. JavaScript wciąż wymiata i będzie wymiatać ;-) .

Zdecydowałem się na cotygodniową serię newsów (ukazującą się co poniedziałek) w której będziecie mogli śledzić moje poczynania z Unity i uczyć się razem ze mną. Słowem, od zera do Game Developer’a.

Tags: , , ,

iPad okiem programisty

Wczoraj apple zaprezentowało długo wyczekiwany produkt – iPad. Jest to bardzo ciekawy produkt, który, jak podejrzewam, ma być odpowiedzią nie tylko na czytniki eBooków, ale także na netBooki, o których apple nie wyrażało się ostatnio zbyt pozytywnie. Mimo swojej oryginalności, nie tego się spodziewałem, byłem prawie pewien że iPad będzie kolejnym komputerem apple z systemem operacyjnym mac, który działać będzie identycznie jak inne komputery, takie jak macbooki, iMac’i itd. Apple zrobiło nam jednak wszystkim niespodziankę, iPad będzie urządzeniem niezależnym od systemu, a co za tym idzie, nie będzie możliwości instalacji jakiegokolwiek innego oprogramowania niż zbudowane właśnie dla tego urządzenia, podobnie jak w przypadku iPoda. Co jednak Ciekawe, przynajmniej w przypadku apple, iPad jest reklamowany jako tanie urządzenie. Zgodnie z cenami najtańsze urządzenie kosztować będzie 499$, jak znam polską marżę u nas będzie to około 2000zł. Trzeba jednak przyznać że urządzonko będzie bardzo przydatne, świetny notes, możliwość oglądania filmów na dużym, jak na ten typ urządzenia ekranie (nie myśląc o tym co będzie się działo z filmami avi, nie obsługiwanymi standardowo przez mac’i, czy filami RMVB), poza tym oczywiście wszystkie funkcje internetu, takie jak przeglądarka internetowa, mapy i mail a także wiele, wiele innych programów dostępnych za darmo, jak np. Facebook.

ipad

Read the rest of this entry »

Tags: , ,