2.0.3 -> 2.0.4 php 5 társaságában

Gondoltam egyet, s belevágtam a szokásos wordpress frissítésbe. Semmi extra, csak írj felül mindent, s menni fog. Így szól a fáma a hivatalos wp faq-ban.

No, nem így volt. Felülírtam mindent, már írtam is be gyorsan a böngészőbe a címet, mire a következő hibaüzenet fogad:

Fatal error: Only variables can be passed by reference in (...)/wp-includes/gettext.php on line 66

Aha. Most mi legyen? Lecseréltem mindent, felülírtam újra a gettext.php file-t. Semmi.

Rövid fórumozás után végül rátaláltam erre a fórumtopikra, ahol a megoldás is szerepelt a sok hozzászólás között. Ez pedig a következő:

A array_shift(unpack('V', $this->STREAM->read(4))); sort ki kell cserélni a következőre:

$tmp=unpack('V', $this->STREAM->read(4));
return array_shift($tmp);

Ezután oldal/wp-admin/upgrade.php és minden szép és jó. 🙂

update: Már csak egy gubanc van, hogy a nyelvi file-okat így nem olvassa be… Emiatt elkefélt félig angol-félig magyar az oldal jelenleg.

Nem csak a fenti sort kell javítani, hanem az alatta levőt is a fentinek megfelelően, csak a ‘V’ helyett ‘N’ kell bele.

Comments

4 responses to “2.0.3 -> 2.0.4 php 5 társaságában”

  1. Gabi Avatar

    Hiába módosítottam az alábbi sort ugyanúgy, a nyelvi file-t (sk.po) nem akarja beolvasni. Valaki segítsen. Köszi.

  2. kobak Avatar

    Gabi, minden egyéb megy, csak a lokalizációval van gond?

  3. Gabi Avatar

    Minden ok. Sikerült végre valahára…
    A gond ott volt, hogy a feljebb mejlent megoldás nem működik nálam. De az alábbi igen. Ez is ugyanarról a topic-ról van.

    function readint() {
    if ($this->BYTEORDER == 0) {
    // low endian
    $promenna_v=’V’;
    $prom_pom = unpack($promenna_v, $this->STREAM->read(4));
    return array_shift($prom_pom);
    } else {
    // big endian
    $promenna_n=’N’;
    $prom_pom = unpack($promenna_n, $this->STREAM->read(4));
    return array_shift($prom_pom);
    }
    }

  4. kobak Avatar

    Örülök, hogy megoldódott, s köszönöm a megosztott megoldást.