Polska wersja WordPress Sociable

Słowem wstępu: od kilku/nastu dni jestem dumnym członkiem społeczności Flaker‚a, dzięki tejże społeczności udało mi się rozwikłać problem niedziałającego spolszczenia do wtyczki Sociable. Konkretniej rzecz ujmując samo rozwiązanie utworzył meloniq i poinformował mnie o tym na Flakerze – za co serdecznie dziękuję.

Dobra, ale o co chodzi? Chodzi o to iż początkowo wzięło mnie na autorskie przetłumaczenie tejże wtyczki. Spolszczenie zrobiłem, ale nie działało, a tymczasem naprawienie tejże usterki w cale nie było takie trudne. Problem tkwił w pliku sociable.php:

47
48
49
50
51
function sociable_init_locale(){
 global $sociablepluginpath;
 load_plugin_textdomain('sociable', false, 'i18n');
 }
 add_filter('init', 'sociable_init_locale');

Wyżej wymieniony wpis modyfikujemy, jak poniżej i do głównego katalogu wtyczki wrzucamy plik sociable-pl_PL.mo:

47
48
$plugin_dir = basename(dirname(__FILE__));
 load_plugin_textdomain('sociable', 'wp-content/plugins/' . $plugin_dir, $plugin_dir);

Nie jestem autorem rozwiązania i jeśli meloniq będzie prosił o usunięcie tego zapisu – usunę go. W końcowej części tego wpisu będziecie mieli możliwość pobrania spolszczonej wersji wtyczki (oryginalnej i mojej „modyfikacji”).

Słowem wstępu to tyle

Spolszczenie po tej modyfikacji działa znakomicie, acz są problemy, bo nie wszystko jest spolszczone, lecz nie było tych zapisów szablonie (?).

Korciło mnie jeszcze jedno – brak polskich serwisów społecznościowych w tej wtyczce. Oczywiście jest dostępna do pobrania Polska wersja wtyczki SociableSociable Polska, ale jak to się mówi, diabeł tkwi w szczegółach. Jest jedno niedopatrzenie, które bardzo mnie zirytowało ostatnimi czasy – Ci, którzy korzystali/korzystają z serwisu społecznościowego Blip, wiedzą że lubi on równie często zaliczać, pady co Gadu-Gadu. Tym samym, odkryłem że Polska odsłona wtyczki nie posiada odpowiednich ikon na dysku/serwerze – pobiera je ze stron. Sami zobaczcie (pierwszy kod z oryginalnej wersji, drugi z polskiej):

586
587
588
589
590
591
	'Wykop' => Array(
		'favicon' => 'wykop.png',
		'url' => 'http://www.wykop.pl/dodaj?url=PERMALINK',
		'spriteCoordinates' => Array(91,73),
		'supportsIframe' => false,
	),
53
54
55
56
57
	$known_sites['Flaker'] = array(
		'favicon' => 'http://flaker.pl/favicon.ico',
		'url' => 'http://flaker.pl/add2flaker.php',
		'description' => 'Wrzuć to na Flakera - powiadom swoich Znajomych'
	);

Dostrzegacie różnicę, że oryginalna wersja wtyczki posiada ikonki w odpowiednim katalogu, jako plik, a polska odsyła do „favicon.ico”? No właśnie, to mnie boli, bo wydłuża znacznie czas ładowania strony, zwłaszcza w przypadku, gdy padnie serwer tejże społeczności.

Poza tym, po co tak kombinować pod górkę z osobną wtyczką, skoro to samo można zrobić w jednej – oczywiście musimy liczyć się z faktem, że jeśli zaktualizujemy wtyczkę, wiąże się to z utratą naszych zapisów – so be careful!

Co zmieniłem

Podirytowany polską wersją wtyczki po:

  1. Spolszczyłem ją;
  2. Dodałem polskie serwisy, które przyszły mi do głowy.

Wśród dodanych przeze mnie serwisów na chwilę obecną znaleźć można:

  1. Blip;
  2. Śledzik;
  3. Flaker;
  4. Kciuk.

Jeśli ktoś ma propozycje – niech pisze w komentarzach, albo na stronie kontaktowej.

O spolszczeniu pisałem wcześniej, ale teraz skupmy się na dodawaniu nowych serwisów. Piszę to, gdyż poprosił mnie o to @SzyderczyCyc, dokładniej – o tu!

Proces niezwykle prosty, opiszę go krokami:

  1. Otwieramy plik sociable.php;
  2. Przechodzimy do linii 687 (jest na samym końcu serwisów podstawowych);
  3. Dodajemy nowy serwis:
    687
    688
    689
    690
    691
    
     	'nazwa' => Array(
            'favicon' => 'nazwa.rozsz',
            'url' => 'adres',
            'description' => 'opis',
    	),

Zapisujemy plik z odpowiednio uzupełnionymi wartościami i działa! Potrzebujemy oczywiście do tego ikonkę serwisu o rozmiarach 16×16 pikseli, oraz odpowiedni adres url. Z dostępnych wartości mamy TITLE, który odpowiada za tytuł wpisu, oraz PERMALINK, odpowiedzialny za odnośnik do wpisu. Na przykładzie Flaker‚a wpis wygląda tak:

 	'Flaker' =>
        'favicon' => 'flaker.png',
        'url' => 'http://flaker.pl/add2flaker.php',
        'description' => 'Flaker',
 	),

Pobieranie

Wszystko, co jest niezbędne do pobrania znajduje się w repozytoriach WordPress‚a.

Nadmieniam, że jeśli ktoś chciałby dodać nowy serwis – nie widzę przeszkód i jestem otwarty na nowe propozycje serwisów. Ty samym mam nadzieję, że komuś jeszcze przyda się ta „wspólna” modyfikacja skryptu :).

Pozdrawiam.

Ten wpis został opublikowany w kategorii WordPress, Wtyczki i oznaczony tagami , , , , , , . Dodaj zakładkę do bezpośredniego odnośnika.

5 odpowiedzi na „Polska wersja WordPress Sociable

  1. Pingback: blog.keepmind.eu: [link] | flaker.pl

  2. pavobe pisze:

    W nowej wersji wtyczki Sociable Polska ten wspomniany problem z ikonami będzie rozwiązany ;-).

  3. inzaghi89 pisze:

    Szczerze powiedziawszy, mógłbym się przyczynić z Tobą do rozwoju polskiej wersji, ale w sposób określony w tym wpisie: modyfikacja oryginalnej wersji + tłumaczenie i polskie serwisy.

  4. Biter pisze:

    Świetna przeróbka, skorzystam. Dzięki

  5. magik-thc pisze:

    Nie wszsytko działa jak trzeba np. sledzik, u mnie na glownej stonie sie nie pokazuje w ogole w opcjach strony nawet jak zaznaczecze ze masie pokzywac to po aktualizacji dalej jest zaznaczona opcja dziwne moze lepiej zrobic polska wersje wtyczki sexybookmarks

Dodaj komentarz

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

*