DIY Wordpress Hack - Ako importovať Ultimate Tag Warrior Tagy ak si Dostávam chyby!

používateľa max dňa Nedeľa 20.apríla 2008

No, pretože som upgrade na Wordpress 2.5, som si musel pustiť Ultimate Tag Warrior. Vlastne som si myslel Ultimate Tag Warrior pracoval až do dneška, keď som zistil, že všetky adresy URL, ako je http://zedomax.com/tag/lasers, mi dáva 404 error.

Dobre, že som zo starej školy, som sa dokonca skúsiť downgrade späť na svoj obľúbený Wordpress 2.2.3, čo má za následok katastrofálne zlyhanie s wp-kategórie ... Sakra!

Tak som sa pozrieť prostredníctvom internetu a v podstate Wordpress 2.5 má zabudovaný-in funkcie umožňujú importovať Ultimate Tag Warrior tagy.

Aj keď by malo ísť hladko, som stretnutie hŕbu problémov, ako stavaný z-do funkcie bol veľmi jednoduchý a nepodporujú import 47.000 značiek, čo je to, čo táto stránka.

Prvým problémom bolo, že som mal Dostávam nasledujúce správa:

Hotovo! 13331 popisky nemohli čítať.
Čítanie utw Post Tags ...
Hotovo! 45824 štítky, aby ste mohli písať vzťahy boli čitateľné.
Pridávanie značiek na príspevky ...
Hotovo! 0 značiek boli pridané!

Teraz, ako vidíte, všetko fungovalo až do posledného riadku, "Hotovo! 0 značiek boli pridané! ". Bol som tak rozzúrený vedieť, prečo to nefunguje, tak som dokonca znížil na Wordpress 2.3.1-RC, ktoré iní hovorili, že to funguje.

Teraz, keď som sa pokúšal importovať, ja som si toto chybové hlásenie:

WordPress database error: [Got paket väčší ako 'max_allowed_packet' bytov]

Tohle je veľmi jednoduché, to jednoducho znamená, že máte MySQL server nie je nastavený na spracovanie veľkého množstva dát.

Tak som urobil zmenu max_allowed_packet veľkosti 1 GB, ako je to tým, pridajte nasledujúci riadok:

set-premenná = max_allowed_packet = 1024M

(Áno, mali 1 koncert robiť svoju prácu som si myslel, ...)

Tak to dopadá, že po tejto zmene, nechápu "0 značiek boli pridané" správa, ale obrazovka "visí" na posledný krok dovoze obrazovky ...

Ako viac ako dobrý hacker autor som, nakoniec som sa rozhodol, že nastal čas, aby zaseknúť Wordpress sám.

Keď som sa pozrel do súboru, import php, utw.php ktoré je pod wp-admin/import adresári Wordpress blog.

Ukazuje sa, že dovozná program je veľmi jednoduchý na väčšine a programátor ani za veľké objemy dát.

Takže namiesto toho robí 1 MySQL dotaz, som to zmenil, takže to len presunie 100 bitov dát naraz.

Ak máte problémy ako ja s veľkým tag databázu, môžete zmeniť nasledujúce funkcie v utw.php takto:

tag2post function () (

/ / Get značky a príspevky máme dovážané v posledných 2 kroky
$ Tags = get_option ( 'utwimp_tags');
$ Posts = get_option ( 'utwimp_posts');

global $ wpdb;
startvalue $ = 0;
endValue = $ 1000;
$ Ct = $ startvalue;

tags_added $ = 0;
while ($ ct <$ endValue) (

$ Posts_query = "SELECT tag_id, post_id FROM". $ Wpdb-> prefix. "Post2tag". "LIMIT". $ Ct. "100";
$ Posts = $ wpdb-> get_results ($ posts_query);

if ($ posts) (
/ / Null naše výsledky

/ / Slučka cez každý post a pridať svoje značky do db
foreach ($ posts as $ this_post) (

the_post $ = (int) $ this_post-> post_id;
the_tag $ = (int) $ this_post-> tag_id;

/ / Čo je názov značky pre tento id?
$ = $ The_tag značky [$ the_tag];

/ / Skrutka to, skúste pridať značku
wp_add_post_tags ($ the_post, $ the_tag);
$ Tags_added + +;
echo "Num:". $ tags_added. "-". $ the_tag. "<br />";

)

)
$ Ct = $ ct +100;
spánku (0.1);
)
echo "Hacked by Max Lee z http://zedomax.com Yey!";

/ / To je to, by mali byť všetky príspevky súvisieť s ich značky správne do doby, než prípadné chyby sme práve vyplivnout!
return $ tags_added;

)

Stiahnite si môj UTW.php tu (premenovať utw.txt ako utw.php)

A teraz, moje odporúčanie je spustiť Krok 3 z dovozu utw tým, že 2000 značiek naraz. Môžete zmeniť hodnotu $ a $ startvalue endValue kontrolovať rozsah svojho dovozu.

Nakoniec som si všetky moje drahé dovážané značky, teraz si môžete nainštalovať Tag Navrhovať Majetok a niektoré ďalšie super veci z utw.

Uf, to bola dlhá 4 hodiny hacking Wordpress. Hoci som veľmi zapôsobila na nový Wordpress 2.5, funkcie ako Ultimate Tag Warrior dovoze by mohla byť dramaticky zlepšila vďaka použitie chytrejší programovania a AJAX.

Čo mám robiť odporúčame, aby vývojári Wordpress urobiť, je použiť AJAX, aby priniesla najviac 1000 značiek na určitú dobu a potom aktualizovať obrazovku a databázy k ochrane znovu zmrazenia alebo užívateľov, ktorí na ich re-konfiguráciu MySQL servera.

Tiež som zistil, že ak váš PHP setttings pre max_execution_time je nízka (baňa bol na 10 sekúnd), môže to byť problém importu proces trvá dlhšie ako 10 sekúnd pre veľké databázy.

Takže takhle to zmeniť v súbore / etc / php.ini súboru:

max_execution_time = 90; Maximálna doba realizácie každého skriptu v sekundách
max_input_time = 95; maximálne množstvo času, každý skript môže stráviť požadovať analýzu dát
memory_limit = 128M

Potom môžete zmeny vrátiť späť po dovoze.

Teraz som načrtol všetky možné problémy, môžete mať pri importe svoj "veľký" počet značiek.

Pre blogy s malým alebo menej ako 2000 značiek, by Wordpress predvolené dovozcu nemal byť problém, ale pre ľudí ako ja s viac ako 10.000 značky, je to veľký problém, ale som si istý, Wordpress vývojári budú aktualizovať v budúcnosti. Skontrolovať mi tak, ako som sa snažil získať pomoc od Wordpress fórum, ale ja som na to prišiel nakoniec sám.

Sadzba

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...

Kategória: Misc.


Site Sponzori
tokyoflash



Súvisiace novinky a zdroje

  • Genius! Ďakujem ti. Bol som taký strach, pretože na aktualizáciu tohto problému. Ja by som stratiť veľa užitočných odkazov na mojich stránkach.
  • Tiež som mal problémy sa snaží importovať utw štítky raz som upgrade na Wordpress 2.5.1 od 2.1. Zkoušel jsem si zaseknúť, a to ma trhough prvých pár krokov (mal som stále ešte ďaleko skôr!), Ale ja som si klávesy rovnakej "nulovej značky" Chyba pri kroku 3:

    Hotovo! 0 značiek boli pridané! <cite>

    Mám 4642 a 5000 značky tag-na-post vzťahov. Any ideas?

    Vďaka,
    Keith </ cite>
  • max
    Skúste zmeniť hodnoty, začnite s startvalue na 0 a endValue 100.

    V závislosti na vašom nastavení servera, množstvo značiek, ktoré možno importovať v čase môže meniť.

    Pre mňa mohol urobiť 5000 značiek naraz. Mal som asi 50.000 tagy, takže ...

    Môžete byť v poriadku robí 500 do 1000 značiek naraz.
  • Skúšali na WP2.6.3 inštaláciu. Vaša hack nefungoval, ale potom sa vrátil a snažil sa pôvodné dovozcu, a to trvalo.
  • max
    No, to hack, je-li pôvodný dovozca nefungovalo a navyše myslím, že som robil to v WP 2.5, ale rád, že to fungovalo pre teba.
blog pripomienky powered by Disqus
Ak budete chcieť tento post sa prosím, prihláste sa mojej plnej RSS feed.

Môžete si tiež objednať prostredníctvom e-mailu, že vyplníte Vaše meno a e-mailovú adresu:

Meno: E-mail:


Dostal novú hack, DIY, howto, alebo gadget? Tip nás tu.

Skúste Goohack nájsť nový Hack:


Featured Sites From Zedomax Blog Network