Sierotki – wtyczka do wordpressa

Sierotki to wiszące na końcu linii spójniki, które wisieć tak nie powinny, ponieważ jest to błąd typograficzny. Na dodatek czyta się to kiepsko.

Malusieńka wtyczka do pobrania: sierotki, która zapobiega takim sytuacjom, poprzez zamianę spacji za znakiem w twardą.

Opis zmian

2.2 – 2014-01-24

  • Dodałem link do forum pomocy (en).
  • Sprawdziłem poprawności działania z WordPress 3.8

2.1 – 2013-11-09

  • Sprawdziłem poprawności działania z WordPress 3.7
  • Zaimplementował reguły PSR-0.

2.0.2 – 2013-08-20

  • Poprawiłem obsługi sierotki leżącej za sierotką.
  • Sprawdziłem poprawność działania z WordPress 3.6
  • Dodałem sekcję pomocy i powiązanych.

2.0.1 – 2013-07-10

  • Dodałem obsługę liczb.

2.0 – 2012-08-12

  • Poprawiłem kwestie uprawnień do strony opcji.
  • Poprawiłem zamianę jeżeli ciąg zaczyna się od sierotki.
  • Przepisałem całość na klasę.
  • Dodałem wiele sierotek i wyrazów, podziękowania dla adpawl.

1.4.2 – 2012-03-02

  • Dodałem filtrowanie tytułów.

1.4.1 – 2011-02-24

  • Dodałem trimowanie znaków w opcji.
  • Poprawiłem błąd wielkrotnego użycia przecinka.

1.4 – 2011-02-24

  • Dodałem możliwość indywidualnego dopisywania sierotek.
  • Poprawiłem błąd dostępu do panelu zarządzania sierotkami. „Wygląd” -> „Sierotki”.

1.3 – 2011-02-19

  • Dodałem stronę opcji, gdzie można włączyć/wyłączyć dla treści, zajawki czy komentarzy.
  • Dodałem obsługę znaku „(” przed sierotką.

1.2 – 2011-02-18

  • Dodałem obsługę sierotek w komentarzach.
  • Poprawiłem błąd nie uwzględniania wielkich liter.

1.1 – 2011-02-17

  • Porzuciłem elegancką funkcję anonimową, bo ich obsługa jest dopiero w  PHP 5.3.0 :( i kilka osób zgłosiło mi błąd nie działania wtyczki, co jak na jednolinijkową wtyczkę było niezłym wynikiem.
  • Dodałem obsługę sierotek w zajawce.

1.0.2 – 2011-02-17

  • Dodałem obsługę znaku „>” przed sierotką.

1.0.1 – 2011-02-16

  • Dodałem do sierotek wyraz „to”.

1.0 – 2011-02-16

  • Start.

51 myśli na temat “Sierotki – wtyczka do wordpressa”

  1. cytuję:
    Wtyczka nie mogła zostać włączona, ponieważ spowodowała wystąpienie krytycznego błędu.
    Parse error: syntax error, unexpected T_FUNCTION in /wp-content/plugins/sierotki/sierotki.php on line 11

  2. @krzychu – Nie wiem co zrobiłeś, ale wszystkie wersje są poprawne:

    find -name sierotki.php -exec php -l {} \;
    No syntax errors detected in ./trunk/sierotki.php
    No syntax errors detected in ./tags/1.0.2/sierotki.php
    No syntax errors detected in ./tags/1.0.1/sierotki.php
    No syntax errors detected in ./tags/1.0/sierotki.php
  3. Wszystko jasne! Użyłem funkcji anonimowej, która jest dostępna dopiero od PHP 5.3.0, co oznacza, że na większości hostingów wtyczka nie mogła działać, bo starszy PHP nie rozumiał tego zapisu. Wersja 1.1 pojawi się pewnie za niedługo na codex’ie (ja już ją wydałem), dzięki czemu powinno być już dobrze.

  4. Tak, dokładnie chodzi o funkcje anonimowe. Ustaliłem to już po zgłoszeniu na niniejszej stronie. Używałem wersji 1.0.1, a jak zapewne zauważyłeś hosting jest w home.
    Dziś wykonałem aktualizację do 1.1 – aktualizacja i włączenie poszło gładko.
    Ale mam wątpliwości co do skuteczności działania wtyczki. Spójrz na http://born66.net/?p=4000 literka „A” wisi jak jakaś sierota …

  5. Wspaniale że wtyczka się rozwija, chociaż jej częste niewielkie aktualizacje są trochę uciążliwe :) Dzięki za sierotki!

  6. przydało by się zrobic coś z pozostawianymi na końcach: ale, we, do, ul., na, po, nr i nr.

    To na razie tyle co mi się w oczy rzuciło.

  7. Może i masz rację ;-)
    Dorzucę jeszcze: ks. i który
    Powolutku wychodzi w praniu, więc jak coś jeszcze zauważę to dam znać.

    No i dzięki. Dobra robota!
    Sam zbierałem się do zrobienia jakiegoś sierocińca (do tej pory korzystałem z wp-typography) jednak trochę pilniejszych spraw na głowie było i czekał sobie w kolejce.

  8. Ech, nie mogłem czekać.
    Na własne potrzeby wprowadziłem małe rozwinięcie:
    return preg_replace(‚/( |>|\()([aiouwz]|że|za|na|od|to|we|do|po|by|nr|ale|nad|pod|gdy|oraz|któr.) +/i’, „$1$2 „, $content);

  9. Gratuluję projektu, właśnie zainstalowałem i sprawdza się świetnie! Liczę na dalszy rozwój i wdrażanie uwag użytkowników ;)

  10. @Łukasz – dziękuję, ale jest prośba żeby jako „nicka” raczej nie używać słowa kluczowego, bo to miejsce nie służy do pozycjonowania. (nicka w komentarzu zmieniłem, następny komentarza zgłoszę jako spam).

  11. @gurthg: przyznam, że nie pamiętam już co wpisałem jako nick :/ ale tym razem podpisałem się jako „Łukasz” :) btw podlinkowany u Ciebie i tak jest tylko gravatar, więc chyba treść nicka nie odgrywa tutaj zbyt wielkiej roli :)

  12. @gurthg, no super ;-D

    Chociaż dobrze by wtyczka natywnie obsługiwała możliwie wiele sierotek.

    Podsunę kolejne rozwinięcie uwzględniające najpopularniejsze skróty i takie tam. Może Ci się przyda ;-)

    $therms = array ( ‚ale’, ‚ależ’, ‚oraz’, ‚od’, ‚do’, ‚na’, ‚nad’, ‚pod’, ‚przed’, ‚po’, ‚to’, ‚tamto’, ‚tej’, ‚tamtej’, ‚we’, ‚za’, ‚ze’, ‚że’, ‚mój’, ‚moje’, ‚mojego’, ‚mojemu’, ‚mojej’, ‚mych’, ‚moich’, ‚twój’, ‚twych’, ‚twoich’, ‚twoje’, ‚twojego’, ‚twojej’, ‚by’, ‚bym’, ‚byś’, ‚żeby’, ‚żebyś’, ‚gdy’, ‚gdyż’, ‚gdyby’, ‚gdybym’, ‚gdybyś’, ‚komu’, ‚który’, ‚którego’, ‚któremu’, ‚która’, ‚której’, ‚którzy’, ‚którym’, ‚których’, ‚min’, ‚max’, ‚nr’, ‚fot.’, ‚cz.’, ‚cyt.’, ‚czyt.’, ‚np.’, ‚nt.’, ‚nw.’, ‚jw.’, ‚tj.’, ‚m.in.’, ‚wg’, ‚b.’, ‚p.’, ‚pl.”pn.’, ‚pt.’, ‚pot.’, ‚im.’, ‚ds.’, ‚kol.’, ‚doc.’, ‚dyr.’, ‚mgr’, ‚inż.’, ‚prof.’, ‚dr’, ‚dz.’, ‚dn.’, ‚bm.’, ‚br.’, ‚godz.’, ‚ul.’, ‚al.’, ‚os.’, ‚woj.’, ‚tel.”ks.’, ‚bp’, ‚bł.’, ‚św.’, ‚śp.’, ‚pw.’);

  13. aaaa, coś ucięło. :-/
    Wysyłam więc na maila, a co z tym zrobisz i w jakim stopniu wykorzystasz, to już zalezy od Ciebie.

  14. Dziękuję, dobrze działa. Jako że czasami tłumaczę jakieś kawałki WP. zdarza mi się korzystać z wtyczki CodeStyling Localization. Oto komunikat od niej na temat Sierotek:

    Compatibility: Loading Issue: Author is using load_textdomain instead of load_plugin_textdomain function. This may break behavior of WordPress, because some filters and actions won’t be executed anymore. Please contact the Author about that.

    Poprosili. Skontakowałem się. Pozdrawiam serdecznie.

  15. Mistrzowski plugin do Wordpressa. Zawsze mi tego brakowało na wielu stronach i jak widać niewiele polskich blogów z tego korzysta, bo niska jest świadomość podstaw DTP wśród ludzi. Ale jak widzę jest postęp i są coraz lepsze narzędzia ułatwiające pracę. Tak trzymać! Ja już korzystam :)

    1. Możesz użyć funkcji iworks_orphan, która jako argument używa łańcucha znaków, zwracając go „odsierotkowanego”. Czyli jak wypisujesz pole: echo iworks_orphan( get_post_meta($post_id, 'nazwa', true) );

  16. czy da się zrobić tak by ten plugin działał także do tytułów?

  17. Marcin,

    Mam wrażenie, że Twoja sprytna wtyczka przestała działać w najnowszej wersji WordPressa (3.5.1) Wszystko było w porządku. Jednak od pewnego czasu wtyczka przestała przenosić sierotki do nowej linii. Problem ten występuje na wszystkich stronach, które prowadzę.

    Pozdrawiam,
    Grzegorz

    1. Sprawdziłem i działa. Ten blog jest na 3.5.1 i wtyczka działa bez problemów, proszę spojrzeć w źródło strony. Twarde spacje są tam, gdzie być powinny.

  18. Dzięki za odpowiedź. Wyłączyłem wszystkie wtyczki oprócz Sierotek. Myślałem, że mogą być w konflikcie z innym pluginem. Niestety wtyczka nadal nie zadziałała prawidłowo.

  19. Witam, pytałem kiedyś jak używać wtyczki z custom fields.
    Funkcja ‚iworks_orphan()’ działała przed wersją 2.0. Teraz dostaję błąd, że taka metoda nie istnieje…

  20. @Grzegorz: no tak, wtyczka została dość mocno przepisana i to … dawno. Dokładniej rzecz ujmując w sierpniu 2012r. Musisz dorobić sobie funkcja, która będzie tworzyła obiekt klasy „iWorks_Orphan” i wywołać metodę „replace”.

  21. Witam serdecznie i dziękuję za wtyczkę. Jest naprawdę przydatna.

    Mam jednak ostatnimi czasy pewien problem, jako że wtyczka powoduje u mnie mały konflikt z motywem którego używam na swoim portalu. Na stronie głównej po użyciu wtyczki pojawiają się „krzaki” w wypisach, po wyłączeniu wtyczki problem ustaje.

    Mam nadzieję że mógłbym liczyć na pomoc, jako że jest Pan świetnym fachowcem (upPrev również używam,świetna robota! :) ).

    Jeśli byłaby taka możliwość, bardzo prosiłbym o kontakt, wtedy można byłoby odtworzyć problem uruchamiając wtyczkę i być może byłby Pan w stanie powiedzieć co jest nie tak.

    Używam WordPressa 3.5.1.

    Przy okazji za jakiś czas zapraszam gorąco na GeekCenter.pl – Twoje Centrum Technologii Mobilnych.

    Z góry dziękuję za odpowiedź i ewentualną pomoc

    Pozdrawiam serdecznie i życzę udanego prowadzenia bloga ;)

    Rafał

  22. Czy jest możliwość wykluczenia działania wtyczki tylko na jedno pole tekstowe? Niestety istnieje konflikt z wtyczką jCountdown i gdy wtyczka jest włączona, licznik nie działa.

    1. @Bartosz: wyjaśnij proszę, bo nie bardzo rozumiem „na jedno pole tekstowe”. W panelu admina w „Wygląd -> Sierotki” można wybrać gdzie ma działać wtyczka.

      Jeżeli to nie jest to o co chodzi, to poproszę o więcej wyjaśnienia.

  23. W obecnych wersjach TinyMCE – sierotki czyli „spacja niełamiąca” lub „twarda spacja” jest już na szczęście w standardzie. W sumie nie wyobrażam sobie pracy bez tej opcji.

    Sierotki (takie wyrażenie słyszę po raz pierwszy) przy standardowej edycji treści strony wizualnie mi przeszkadzają i staram się je poprawiać. Ja odkąd pamiętam, odkąd pracuję w WordPressie i w edytorze TinyMCE zawsze tę opcję miałem w pakiecie wtyczki.

  24. W Wikipedii pisze również, że wiszący spójnik, zawieszka, sierota jest błędem wyłącznie typograficznym, nie jest zaś błędem ortograficznym. Chyba to błąd bardziej wizualny i estetyczny :)

  25. witam,
    czy jest szansa na sierotki w wersji standalone, w tym sensie, że możliwe do zastosowania na dowolnej stronie, nie tylko w wordpressie?

    1. Tak, można już z tego skorzystać w pliku plugins.svn.wordpress.org/sierotki/tags/2.2/vendor/iworks/orphan.php weź funkcje „replace” i wytnij z niej odwołania do opcji WP.

  26. znakomicie, dzięki, skorzystam – oczywiście z odsyłaczami i informacjami dziękczynnymi :)

Możliwość komentowania jest wyłączona.

Jeżeli chcesz skomentować, napisz mail na adres marcin w domenie strony na której jesteś. Dodam twoj komentarz.