Autor: Marcin Pietrzak Strona 22 z 41

WordCamp w Łodzi

W drugi weekend grudnia w dniach 11-12 odbędzie się w Łodzi, na terenie Politechniki Łódzkiej, polska edycja WordCamp – czyli konferencja poświęcona wordpressowi. Na razie nie ma jeszcze programu, ale patrząc na prelegentów już wiem, że warto.

Więcej informacji znajdziecie na stronie: WordCamp.

postgres na utf8 i serwis w latin2

Opiekuję się serwisem, który ze względu na długą historię życia jest napisany tak, że korzysta z kodowania ISO-8859-2, czyli tytułowego latin2. Jakiś czas temu była aktualizowana baza danych z pg 8.2 do pg 8.4 z konwersją bazy do utf-8 jako początkiem procesu zmiany strony kodowej całego serwisu w którym coraz częściej pojawia się potrzeba wykorzystania znaków z szerszego zakresu znaków niż oferuje latin2.

Obawa co do współpracy aplikacji z bazą były, ale jedno polecenie powoduje bezkłopotową konwersję znaków na poziomie połączenia z serwerem db.

Zapisuję dla pamięci

ALTER USER user SET client_encoding = 'LATIN2';

dzięki depesz

Wordpress motyw - klusek.pl

Klusek

To było prawie typowe wdrożenie motywu dla WordPress, prawie ponieważ do pracy zostały zaprzęgnięte ustawialne typy wpisów, które zostały wykorzystane do budowy produktów. Dzięki czemu produkty można obsłużyć w całkowicie odmienny sposób, jednocześnie nie tracąc prostoty edycji wordpressa. Produkty, bo tym zostały nowe typu posiadają tylko te pola które potrzebują, w tym pola definiowalne. Temat jest w pełni konfigurowalny, używa definiowalnego menu oraz kilku stref na widgety. W celu zwiększenia atrakcyjności wyglądu do generowania menu oraz nagłówków użyłem czcionki wykorzystującej cufón.

W serwisie użyto również:

  • generowania sitemap.xml
  • formularze kontaktu oraz złożenia zapytania ofertowego przesyłane na mail
  • prezentacja produktów
  • prezentacja promocji
  • prezentacja z użyciem map google’a położenia sklepów
adres
klusek.pl
w sieci
wrzesień 2010
oprogramowanie
wodrpress
cel
wdrożenie serwisu z wykorzystaniem wordpres
zakres prac
pocięcie grafiki, wytworzenia szablonu do wordpress
technologie
php, xhtml

Biznesowy motyw do wordpress’a

Na podstawie otrzymanych plików graficznych wytworzyłem i wdrożyłem motyw do wordpress’a. W motywie wykorzystano możliwości jakie daje wersja 3. Wykorzystano możliwość budowania menu oraz ze zdefiniowanych wielu stref na widgety. Do wdrożenia użyto wtyczek zapewniające możliwość obsługi następujących funkcjonalności:

  • zarządzania biuletynem
  • generowanie sitemap.xml
  • tworzenie mapa strony
  • prezentacja działów jako lista artykułów grupowane na podkategorie (zawężona mapa strony)
  • formularz kontaktowy
  • prezentacja popularnych wpisów
  • prezentacja relatywnej daty publikacji (10 minut temu)
oprogramowanie
wodrpress
cel
wdrożenie serwisu finansowego z wykorzystaniem wordpress
zakres prac
pocięcie grafiki, wytworzenia szablonu do wordpress
technologie
php, xhtml, jquer, css sprites

Przyciski w przeglądarkach

Przydatne, dziękuję.

Button kontra przeglądarki

Jak policzyć unikatowe linie w pliku

Mamy plik zawierający następujące dane:

Iza
Aga
Aga
Leon
Aga
Iza

Aby policzyć unikatowe linie, posortować i wyświetlić on najczęściej występujących używamy następującej komendy:

sort nazwa.txt | uniq -c | sort -n -k1 -r

Co da jako

3 Aga
2 Iza
1 Leon

Oczywiście można to zastosować do innych danych.

sesje PHP w memcache’u

Pewien dość mocno obciążony serwer www (apache2) strasznie dużo zapisywał w katalogu sesji PHP. Na tyle dużo, że zaczeło to być problemem, jeszcze nie krytycznym, ale już zauważalnym.

Jednym z możliwych rozwiązań jest przeniesienie sesji do bazy danych, ale ze względu na specyfikę danych sesyjnych nie jest to szczególnie dobre rozwiązanie przy tej wielkości serwisu, a dodatkowo serwis korzysta z postgresa, więc wrzucanie w niego sesji jest jeszcze mniej polecane.

Rozwiązaniem zastosowanym, a które szczerze polecam jest memcache.

Instalacja jest banalnie prosta. Najpierw odpowiednie moduły na serwerze: (dla debianowaych):

sudo apt-get install memcached php5-memcache

Sprawdzamy czy serwer memcache wstał

netstat -ntlp | grep mem

oraz czy w używany php jest załadowany moduł memcache.

W konfiguracji php należy zmienić sposób przechowywania sesji oraz ustawić dane dostępowe do memchache’a:

;session.save_handler = files
session.save_handler = memcache
session.save_path="tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"

Teoretycznie powinno zadziałać.

Niestety u mnie wystąpił następujący błąd:

Fatal error: session_start() [function.session-start]: Failed to initialize storage module: memcache (path: [...]/session) in /var/virtuals/[...].php on line 41

Który związany był z ustawianiem przez plik konfiguracyjny serwisu następującej wartości

ini_set("session.save_path",SESSION);

i dopiero po jej usunięciu wszystko zaczęło śmigać tak jak powinno.

memcache dla IP.Board

Żeby wybrać jedną z kilku metod cache’owania w IP.Board musimy w pliku conf_global.php określić, którą z metod wybieramy poprzez ustawienie odpowiedniego włącznika.

Żeby skorzystać z memcheche’a należy dodać poniższe parametry, oczywiście w server i port wpisując odpowiednie wartości.

$INFO['use_memcache'] = '1';
$INFO['memcache_server_1'] = '127.0.0.1';
$INFO['memcache_port_1'] = ''11211;

Jednocześnie należy pamiętać, żeby usunąć inne sposoby cache’owania.

modx theme

web design cork – ModX Theme

Na podstawie otrzymanych plików graficznych wytworzyłem i wdrożyłem temat do ModX. W temacie wykorzystano wygenerowaną czcionkę za pomocą cufón oraz pokaz slajdów na stronie głownej.

oprogramowanie
modx
cel
utworzenie skórki do modx
zakres prac
pocięcie grafiki, wytworzenia szablonu do modx
technologie
php, xhtml, jquer, css sprites
producent
Web Design Cork

Brak nowej zawartości w IP.Board

Po aktualizacji forum opartego na skrypcie IP.Board do wersji 3.1.2 z wersji 3.0.5 przestało działać kilka rzeczy. Nie wyświetlała się zawartość typu „pokaż czego nie przeczytałem od ostatniej wizyty”, a wyniki wyszukiwania zwracały nic nie mówiące „niczego nie znaleziono”.

Obie rzeczy związane są z aplikacją, którą wykorzystuję do indeksowania treści a jest nią w tym przypadku sphinx.

Okazało się, że w nowej wersji forum (aktualizacja do wersji 3.1.2 z wersji 3.0.5) zmieniła się struktura zapytań do indeksera i wymaga była aktualizacja pliku konfiguracyjnego sphinx.conf

Po jego aktualizacji i przebudowaniu indeksów obie usługi na forum zaczęły działać prawidłowo.

Strona 22 z 41

Oparte na WordPress & Theme by Anders Norén