Jak to możliwe, że wordpress wysyła rejestrującemu się użytkownikowi nieprawidłowy link rejestracyjny i dzieje się to od wielu miesięcy (jeśli nie dłużej) a nikt tego nie zgłosił ani nie poprawił? Przecież to kluczowy błąd, który powoduje, że wielu użytkowników, skonsternowanych „kręceniem się w kółko” po prostu rezygnuje z zapisania się na danego bloga.
Na szczęście dzięki swojemu wrodzonemu geniuszowi znalazłem ten błąd i poprawiłem – był w linii 17050 w pliku pluggable.php znajdującym się w katalogu wp-includes.
Radzę każdemu kto ma bloga na wordpressie podmianę tego pliku. Prawidłowy  – poprawiony przeze mnie – podaję w dalszej treści. Jak ktoś się obawia brać ode mnie to może sobie sam poprawić kod wg opisu, który też podałem.

Tutaj jest poprawiony plik pluggable.zip – należy go rozpakować i plik pluggable.php wrzucić do katalogu wp-includes zamieniając z obecnym tam plikiem (nadpisując go).

Jeżeli się boisz możesz zmienić kod w tym pliku samodzielnie. Wystarczy go wyedytować w dowolnym programie (choćby notatniku).

Błędna linia to 17050 . Wygląda ona tak:
$message .= ‚>’ . network_site_url(„wp-login.php?action=rp&key=$key&login=” . rawurlencode($user->user_login), ‚login’) . „>\r\n\r\n”;

trzeba ją zmienić choćby na taką:

$message .=  network_site_url(„wp-login.php?action=rp&key=$key&login=” . rawurlencode($user->user_login), ‚login’)  „\r\n\r\n”;

 

This article has 8 comments

  1. Malwina Gąska Reply

    Ot, siła open source, niby każdy może przejrzeć źródło, ale nikt tego nie robi, jakby tam wrzucono backdoora też by pewnie długo wisiał, zanim ktokolwiek by ten kod przejrzał. Rakiety w NASA eksplodują przez błąd w programie, którego kod źródłowy jest wyświetany na projektorze i każdy widzi źródło, ale odpowiedzialność się rozmywa i nikt sam nie wyskakuje przed szereg by błąd poprawić.

  2. Marek Reply

    wklejam to dokłądnie tak jak napisałęś i dostaję:
    Parse error: syntax error, unexpected ‚=’ in /wp-includes/pluggable.php on line 1823

    z czego to moze wynikać?

      • Marek Reply

        zrobiłem tak:
        ściągnęłem plik pluggable.php na dysk
        otworzyłem notepad++
        wyedytowałem
        zapisałęm
        wrzuciłem na ftp zastępując stary plik

        mam wrażenie, że coś tu jest na rzeczy z tym, że plik przy wrzucaniu może być rozpoznawany jako ascii a nie utf8 – ale ja mu nie zmieniałem kodowania bo i jako txt nie zapisywałem

Leave a Comment

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