Zmiany na devblogu

Przez ostanie 2 dni trochę pomęczyłem się z nowym designem i szablonem devbloga, czego skutkiem jest „wisząca” od wczoraj nowa odsłona. Stary szablon od dawna mi się już nie podobał i trochę mnie uwierał, ale nigdy nie chciało mi się tego zmienić, bo albo brak czasu, albo chęci. A ostatnio, robiąc wielki review swoich stron, nie omieszkałem się zahaczyć i o bloga.

Mam nadzieję, że nowy wygląd przypadnie do gustu stałym bywalcom. Jest bardzo prosty i minimalistyczny. Od jakiegoś czasu podobają mi się takie proste rozwiązania. Zapewne można jeszcze znaleźć jakieś przeoczone niedoskonałości, które poprawi się w praniu. Na razie mam dosyć webdeveloperki ;)

Przy okazji zmiany szablonu, dokonałem tez wielkich porządków w bazie danych. Od dawna planowałem przegrupować i przetagować wszystkie notatki i wpisy, bo zrobił się mały bałagan. Wyczyściłem tablice związane z tagami i grupami w bazie i zacząłem długą i żmudną pracę, przy okazji usuwając różne bezsensowne posty i śmieci, czego wynikiem jest odchudzenie bazy o ok. 100 wpisów, czyli ~25% zawartości.

Jeśli chodzi o zawartość czysto merytoryczną, to powinna się ona poprawić po tych wielkich porządkach, aczkolwiek sam nie wiem o czym powinienem pisać. Na pewno częściej, ale o czym? O czym ma być mój devblog? Jakie tematy powinienem poruszać?

Do tego, aby pisać dobrze, trzeba umieć pisać, a mi to chyba nie zawsze wychodzi dobrze. Chciałbym zamieszczać więcej przemyśleń związanych z szeroko pojętą techniką, głównie inżynierią oprogramowania i samym programowaniem, skupiając się czasem mocniej na wykorzystywanych technologiach i językach, a także „rzucać” czasem ciekawe rozwiązania napotykanych problemów oraz eksperymenty różnej maści. No, ale żeby to osiągnąć trzeba posiadać trochę czasu oraz przede wszystkim umiejętność łatwego i dobrego przenoszenia myśli i odczuć na papier, bądź „inną” jego formę.

Wracaj do tematu ostatnich zmian, chciałem tez w nowym szablonie poprawić problem polskiego tłumaczenia dat, czyli miesiące w dopełniaczu. Na sieci różne są rozwiązania, od wtyczek z funkcjami pl_... do hardcodowych zmian w pliku tłumaczenia. Zmiany w tłumaczeniu mają tą przewagę, że działają automatycznie, i nie trzeba kombinować z parsowaniem zmiennych z datą i czasem (co czasem dokonywane jest kilkakrotnie). Jedyna wada to taka, że wszystkie wystąpienia miesięcy zostaną zmienione, nawet w tych miejscach, gdzie nie koniecznie chcielibyśmy to zrobić, np. w liście miesięcy w archiwum, dlatego proponowana jest zmiana skrótów miesięcy z tłumaczenia na ich pełne odpowiedniki w dopełniaczu.

Zmiany w tłumaczeniach mogą być problematyczne przy aktualizacjach, choć sami pomysłodawcy twierdzą, że pliki te nie są nadpisywane przy aktualizacjach. Może kiedyś tak było, jak ręcznie trzeba było zadbać o lokalizację WordPressa. Obecnie z strony projektu można pobrać gotowe paczki dla różnych języków lub skorzystać z opcji automatycznej aktualizacji, co zmienia punkt widzenia.

Ja znalazłem nieco inne rozwiązanie, zbliżone do zabaw z lokalizacją, ale nie wymagające zmian w plikach językowych. Wystarczy tylko w obiekcie klasy WP_Locale, podmienić zainicjowane wartości miesięcy, można tego dokonać w bardzo prosty sposób w samym szablonie.

Każdy szablon może korzystać z niestandardowych funkcji zdefiniowanych przez użytkownika, autora. Funkcje te umieszcza się w pliku functions.php w katalogu danego szablonu. Więc wystarczy dodać poniższy kod do tego pliku (ewentualnie utworzyć ten plik, jeśli nie istnieje):

if (WPLANG === 'pl_PL') {
	$wp_locale->month['01'] = 'stycznia';
	$wp_locale->month['02'] = 'lutego';
	$wp_locale->month['03'] = 'marca';
	$wp_locale->month['04'] = 'kwietnia';
	$wp_locale->month['05'] = 'maja';
	$wp_locale->month['06'] = 'czerwca';
	$wp_locale->month['07'] = 'lipca';
	$wp_locale->month['08'] = 'sierpnia';
	$wp_locale->month['09'] = 'września';
	$wp_locale->month['10'] = 'października';
	$wp_locale->month['11'] = 'listopada';
	$wp_locale->month['12'] = 'grudnia';
}

Lub ten, jeśli chcemy zamienić skróty na pełne dopełniacze:

if (WPLANG === 'pl_PL') {
	$this->month_abbrev[__('January')]	= 'stycznia';
	$this->month_abbrev[__('February')]	= 'lutego';
	$this->month_abbrev[__('March')]	= 'marca';
	$this->month_abbrev[__('April')]	= 'kwietnia';
	$this->month_abbrev[__('May')]		= 'maja';
	$this->month_abbrev[__('June')]		= 'czerwca';
	$this->month_abbrev[__('July')]		= 'lipca';
	$this->month_abbrev[__('August')]	= 'sierpnia';
	$this->month_abbrev[__('September')]= 'września';
	$this->month_abbrev[__('October')]	= 'października';
	$this->month_abbrev[__('November')]	= 'listopada';
	$this->month_abbrev[__('December')]	= 'grudnia';
}

Efekt jest taki sam jak bezpośrednia zmiana w plikach lokalizacji.

Musze znaleźć jakieś nowe zabezpieczenie przed spamem w komentarzach, bo wykorzystywana do tej pory wtyczka Spam Karma 2, która za spam uznała ponad 22.5k komentarzy, nie jest już rozwijana przez autora. A także, trochę dużo danych ładowała do bazy danych, więc się jej pozbyłem.

7 przemyśleń nt. „Zmiany na devblogu”

  1. czytam ciebie raptem niecały rok, ale muszę powiedzieć, że poprzedni design był ciekawszy. ten też jest w porządku, ale nie wyróżnia bloga spośród innych. z resztą content i tak najważniejszy. :D

    mnie nurtują podobne pytania. w sieci opisane zostało niemal wszystko. doszedłem do wniosku, że nie interesuję się niczym konkretnym i nie mam wystarczająco dużej wiedzy, żeby móc być autorytetem w jakiejś dziedzinie. stąd też brakuje wpisów u mnie.

    mam nadzieję, że się nie wypalisz i czekam na kolejne wpisy. :)

  2. Mi sie na poczatku podobal, ale z czasem coraz mniej, az doszedlem do tego ze nie potrafilem na niego juz patrzec ;p

    W sieci znajdziesz wszystko o wszystkim. Nie chce byc autorytetem w zadnej dziedzinie, chce tylko ciekawie pisac i zeby mi sie to podobalo ;)

    Mniej czysto-dokumentalno-manualowego belkotu o danym jezyku, bibliotece, funkcji, choc takie posty tez sa czasem potrzebne. W sumie moga tez byc, ale z wieksza iloscia zawartego w nim zycia – wlasnych zdan, przemyslen i opinii, troche analiz i roznych eksperymentow. Aby fajnie sie pisalo i czytalo, nie majac dziwnego przeswiadczenia, ze po raz kolejny to samo lub ze siedzimy przed jakas „ciezkostrawna”, akademicka ksiazke pelna technicznego belkotu i suchych definicji ;)

    Kolejne wpisy beda na pewno, mam nadzieje ze czesciej niz ostatnio i nieco ciekawiej ;)

  3. Nowy design jest super, stary też był ciekawy, jednak ten jest czytelniejszy.

    btw. ja już rok się zbieram, żeby zrobić własny :) Ciągle szkoda mi czasu na siedzenie w CSS przez kilka wieczorów.

    Pozdrawiam.

  4. Obecnie tez mam lekka awersje do webdeveloperki, a z niektorymi rzeczami dlugo zwlekalem (homepage), ale po obronie nie chcialem wracac od razu do „wielkich, starych” projektow. Mialem jakies poczucie, ze czas najwyzszy wszystko uporzadkowac. I hurtowo polecialo kilka webow: homepage, projekty, devblog. Teraz spokoj na dlugo, oby ;)

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *