Wie kann RWordPress Inhalte von Blogposts abrufen?

Lesezeit: 3 Minuten

Benutzer-Avatar
Anwalt

Ich möchte den Inhalt von Beiträgen aus meinem WordPress-Blog abrufen. Verwenden des Pakets RWordPress Es ist einfach, Kategorien, Tags und Titel abzurufen, aber was ist mit dem Inhalt von Beiträgen?

# Download and load the package
if (!require('RWordPress')) {
    devtools::install_github(c("duncantl/XMLRPC", "duncantl/RWordPress"))
  }

library(RWordPress)

# list all the functions in the package
lsf.str("package:RWordPress")

Hier ist zum Beispiel der Code zum Abrufen von Kategorien, wobei meine Angaben in Klammern redigiert sind:

Cat <- getCategoryList(login = c([my user name] = '[my password'),
        .server="http://[my blog on].wpengine.com/xmlrpc.php")

Die verknüpfte SO-Frage ist nicht anwendbar, da sie RWordPress nicht verwendet [HTML and CSS and PHP coding].

Auf dieser Seite geht es um das Posten auf WordPress, nicht um das Abrufen von WordPress [publishing, not gettting]. Eine andere Frage verwendet xmlrpc ebenso wie RWordPress und einen getPosts-Aufruf, ist aber nicht auf R angewiesen.

Posts <- getPosts(num = 100, blogid = 0L, login = c([my user name] = '[my password]'), .server="http://[my blog name].wpengine.com/xmlrpc.php")

Der obige Code gibt Daten, Titel und Status zurück, aber keinen Inhalt.

Vielen Dank für jede Anleitung.

****************** Bearbeiten nach der ersten Antwort

Nach Bedarf RWordPress und XMLRPCund dann ein Objekt für die Anmeldung und für den .server definieren, hier ist die Konsolennachricht:

> getPageList(blogid = 0L, login = WordPressLogin, .server = WordPressURL)
Error in xml.rpc(.server, op, as.integer(blogid), names(login), as.character(login),  : 
  Problems

Ich finde, dass “Probleme” für mich keine informative Fehlermeldung ist.

  • Bearbeiten: Kommentar hier neu posten, damit er näher an Ihrer Bearbeitung liegt – Im Allgemeinen wird ein Fehlercode zurückgegeben. Ich bekomme diesen speziellen ‘Problem’-Fehler nur, wenn die url of xmlrpc.php file auf dem Server ist falsch. Schlagen Sie vor, dass Sie es überprüfen, indem Sie direkt in den Browser eingeben. Übrigens habe ich später den Code ausgeführt, um Posts von einem Remote-Server abzurufen, und es hat immer noch gut funktioniert.

    – RS

    16. Oktober 2016 um 16:17 Uhr

Sag mir, wenn ich etwas vermisse, aber für mich das description Bezeichner von Beiträgen scheinen den gesamten Text zu liefern.

RWordpress bildet alle Funktionen in ab XML-RPC wp

if (!require('RWordPress')) {
  devtools::install_github(c("duncantl/XMLRPC", "duncantl/RWordPress"))
}
library(RWordPress)
options(WordPressLogin = c(myusername="mypassword"),
        WordPressURL = 'http://localhost/myblog/wordpress/xmlrpc.php')
# library(knitr)

# can refer this page
# http://codex.wordpress.org/XML-RPC_wp

#Rwordpress has a one to one mapping 
getCategories()

#get a list of pages
getPageList()
# pick one id from above list 
id=27
getPage(pageid = id)
# description seems to have all the text of post, even though the 
# document is sparse
getPage(pageid = id)$description

#similarly for posts
getPost(postid = 6)$description

Ich verwende natürlich ein lokal installiertes Blog, aber ich würde davon ausgehen, dass dies aus der Ferne funktionieren sollte.

  • Sehr verbunden, RS, aber siehe meine Bearbeitungen zu meiner Frage.

    – Anwalt

    16. Oktober 2016 um 14:10 Uhr


  • Im Allgemeinen gibt es einen Fehlercode zurück. Ich bekomme diesen speziellen ‘Problem’-Fehler nur, wenn die url of xmlrpc.php file auf dem Server ist falsch. Schlagen Sie vor, dass Sie es überprüfen, indem Sie direkt in den Browser eingeben. Übrigens habe ich später den Code ausgeführt, um Posts von einem Remote-Server abzurufen, und es hat immer noch gut funktioniert.

    – RS

    16. Oktober 2016 um 16:16 Uhr

  • Ich habe den URL-Code überprüft und folgende Meldung erhalten: „Der XML-RPC-Server akzeptiert nur POST-Anforderungen.“ Ich verwende WPEngine.com als Host. Vielleicht blockiert es, was andere Server zulassen?

    – Anwalt

    16. Oktober 2016 um 19:43 Uhr

  • Das bedeutet, dass die xmlrpc.php genau dort vorhanden ist und funktioniert. Es kann ein anderes Serverkonfigurationsproblem geben, wenn die Parameter richtig eingestellt sind. Ich denke, Sie sollten sich an den Host wenden, um zu prüfen, ob es Einschränkungen für die XMLRPC-Engine gibt.

    – RS

    17. Oktober 2016 um 1:36 Uhr

  • In der Tat blockiert mein Host es. Ich werde Ihre Antwort akzeptieren, da Sie viel Zeit darauf verwendet haben, mir zu helfen.

    – Anwalt

    17. Oktober 2016 um 15:27 Uhr

1368970cookie-checkWie kann RWordPress Inhalte von Blogposts abrufen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy