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:
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:
$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 Sociable – Sociable 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):
'Wykop' => Array( 'favicon' => 'wykop.png', 'url' => 'http://www.wykop.pl/dodaj?url=PERMALINK', 'spriteCoordinates' => Array(91,73), 'supportsIframe' => false, ),
$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:
- Spolszczyłem ją;
- 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:
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:
- Otwieramy plik sociable.php;
- Przechodzimy do linii 687 (jest na samym końcu serwisów podstawowych);
- Dodajemy nowy serwis:
'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
- Oryginalna wersja Sociable z dodanym tłumaczeniem sociable-pl_PL.mo (*.zip | 316KB);
- Zmodyfikowana przeze mnie wersja Sociable z tłumaczeniem sociable-pl_PL.mo (*.zip | 320KB);
- Samo tłumaczenie sociable-pl_PL.mo (*.zip | 60KB).
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.
Dodaj komentarz