Windows Live Writer este in opinia mea cea mai complexa aplicatie care permite editarea si publicarea articolelor pe un blog, Aplicatia poate fi folosita atat pentru blogurile hostate pe WordPress.com, SharePoint, Blogger, TypePad, cat si pe cele self hosting.
Inainte de a conecta Windows Live Writer la un blog cu platforma WordPress, trebuie mai intai sa bifam optiunile de Remote Publishing. Atom Publishing Protocol si XML-RPC din Dashboard > Settings > Writing.
Dupa conectare, Windows Live Writer importa cateva elemente ale blogului printre care tema grafica (optional) si tag-urile. Cand blogul are o baza de date foarte consistenta, in special pe tabelul cu tag-uri (numar mare) este posibil ca serverul pe care este hostat blogul sa nu permita conexiunea WLW-ului si apara erori de genul:
Invalid Server Response – The response to the wp.getTags method received from the blog server was invalid.
Aceasta erorare apare in special cand dorim sa importam lista de tag-uri (wp_tags) in Windows Live Writer.
Detalii Eroare:
Unexpected Error Occurred
An unexpected error has occurred within the application.
WindowsLive.Writer.Extensibility.BlogClient.BlogClientInvalid
ServerResponseException: Invalid Server Response - The response to the wp.getTags method received from the blog server was invalid:
Invalid response document returned from XmlRpc server
at WindowsLive.Writer.BlogClient.Clients.XmlRpcBlogClient.
CallMethod(String methodName, XmlRpcValue[] parameters)
at WindowsLive.Writer.BlogClient.Clients.MetaweblogClient.
WordPressGetKeywords(String blogId)
at WindowsLive.Writer.BlogClient.Clients.MetaweblogClient.
GetKeywords(String blogId)
at WindowsLive.Writer.BlogClient.Blog.RefreshKeywords()
at WindowsLive.Writer.PostEditor.PostPropertyEditing.
SharedPropertiesController.<.ctor>b__0(Object sender, EventArgs args)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at WindowsLive.Writer.Controls.BitmapButton.OnClick(EventArgs e)
at System.Windows.Forms.Control.WmMouseUp
(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.UserControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.
OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.
WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Cauza Erorii:
In momentul importului (de tags in cazul nostru) serverul care gazduieste blogul este mai solicitat decat de obicei, iar limita de memorie (RAM) alocata executarii scripturilor PHP este depasita. Din acest motiv serverul respinge conexiunea sau opreste importul. “Invalid response document returned from XmlRpc Server“.
Rezolvarea Erorii:
Ca si in cazul erorii “metaWeblog.newPost“, rezolvarea este tot din .htaccess. Va trebui sa adaugam o linie care sa mareasca limita de memorie alocata contului de web hosting pe care este blogul. Pentru a face acest lucru, adaugam in .htaccess linia:
value memory_limit 256M
Valoarea 256M a “memory_limit” stabileste marimea maxima exprimata baiti pe care un script PHP o poate utiliza. Limita “memory_limit” este stabilita implicit la 128M de fisierul php.ini (config-ul PHP_INI_ALL pe server pentru PHP) pe majoritatea serverelor care reuleaza PHP 5.3.10. In trecut, inainte de PHP 5.2.0 valoarea era de 8M, iar odata cu lansarea versiunii PHP 5.2.0, aceasta valoare a fost stabilita la 16M.
Inainte de importul Tags in WLW puteti mari aceasta limita peste 128M, dar trebuie sa tineti cont si de memoria totala a serverului web. Directiva “memory_limit” impiedica practic un script PHP scris eronat sa consume toata memoria disponibila pe un server. Este recomandat ca dupa import sa stergeti aceasta linie din .htaccess pentru a reveni la valoarea default stabilita de php.ini.
Daca nu aveti acces la setarile de modificarea a valorii “memory_limit”, in aceasta situatie va trebui sa va adresati providerului care hosteaza blog-ul dvs. Din motive de securitate si performanta, majoritatea furnizaorilor de web hosting restrictioneaza accesul conturilor la setarile “sensibile” ale serverului.