Manuel e: Inhalte aus deinem MediaWiki auf Homepage dastellen.

Hallo liebe Helfer!!!

Ich habe folgendes Problem: Wir betreiben ein MediaWiki, in dem wir einige Informationen zusammengestellt haben, die regelmäßig aktualisiert werden müssen. Insbesondere geht es dabei um ein FAQ.

Die "gesammelten Daten" sollen aber nicht im Wiki bleiben, sondern auf der Homepage zur Verfügung gestellt werden. Ein kopieren der Inhalte kommt nicht in Frage. Außerdem sollte die Struktur und die Möglichkeiten, die das Wiki bietet nicht eingeschränkt werden.

Es gibt doch bestimmt PHP-Libarys, die genau das erledigen:

  • bei Wiki einloggen
  • Daten abholen
  • in HTML konvertieren
  • Design anpassen
  • ausgeben

Es wäre total lieb von euch, wenn ihr mir ein paar Tipps oder die entscheidenden Hinweise geben könntet. Ich habe mir nun nen Wolf gesucht. Außerdem hab ich versucht den Quellcode von MediaWiki nachzuvollziehen, um es dann nachzubauen. Aber auch daran bin ich gescheitert.

Ich danke euch schon einmal im Voraus für die Mühe!
Gruß Manuel

  1. Es gibt doch bestimmt PHP-Libarys, die genau das erledigen:

    • bei Wiki einloggen
    • Daten abholen
    • in HTML konvertieren
    • Design anpassen
    • ausgeben

    Ich glaube kaum. Es ist sehr schwer ein Script zu schreiben, dass sich auf deinem Wiki einloggt. Du solltest eher direkt die Daten aus der DB holen und dann ist das Design und das ausgeben ja kein Problem mehr.

    Ich hoffe ich habe dein Vorhaben auch richtig verstanden, ansonsten belehre mich :)

    Grüße

    1. Hey,

      Es ist sehr schwer ein Script zu schreiben, dass sich auf deinem Wiki einloggt.

      das Screenscraping ist mit dem richtigen Werkzeug aber sehr einfach. http://search.cpan.org/dist/WWW-Mechanize

      Du solltest eher direkt die Daten aus der DB holen und dann ist das Design und das ausgeben ja kein Problem mehr.

      Das widerum ist schwer, oder gibt es irgendwo eine Spec, die vorgibt, wie Mediawikisyntax nach HTML abbildet?

      --
      水-金-地-火-木-土-天-海-冥
      1. Hey,

        Es ist sehr schwer ein Script zu schreiben, dass sich auf deinem Wiki einloggt.
        das Screenscraping ist mit dem richtigen Werkzeug aber sehr einfach. http://search.cpan.org/dist/WWW-Mechanize

        Du solltest eher direkt die Daten aus der DB holen und dann ist das Design und das ausgeben ja kein Problem mehr.
        Das widerum ist schwer, oder gibt es irgendwo eine Spec, die vorgibt, wie Mediawikisyntax nach HTML abbildet?

        Hehe, habe eben fast das gleiche geantwortet. Danke!
        Aber wie gesagt: Es ist leider kein Perl installiert. Gibts denn wirklich keine PHP-Lösung?

        Gruß Manuel

    2. Vielen Dank für deine Antwort.

      Ich weiß nicht genau, ob es wirklich "einfacher" ist, die Daten direkt (via SQL) aus der Datenbank zu holen. Diese liegen dort nämlich als Binarys, womit ich grundsätzlich schon mal ein Problem habe. Außerdem kenne ich den Algorithmus, der Wiki-Code zu HTML umwandelt leider nicht.

      Für Perl habe ich folgende Libary (http://search.cpan.org/~retoh/CMS-MediaWiki-0.8011/lib/CMS/MediaWiki.pm) gefunden. Wenn ich das richtig verstanden habe, macht diese genau, was ich brauche. Nämlich eine Seite aus dem Wiki holen und anzeigen. Allerdings ist auf dem Server leider kein Perl installiert, weshalb ich nun eine Lösung für PHP suche.

  2. Moin,

    Es gibt doch bestimmt PHP-Libarys, die genau das erledigen:

    • bei Wiki einloggen
    • Daten abholen
    • in HTML konvertieren
    • Design anpassen
    • ausgeben

    So weit mir bekannt: Nein. http://meta.wikimedia.org/wiki/Alternative_parsers gibt einen ziemlich guten und Dich wahrscheinlich etwas enttäuschenden Überblick. Google nach mw2html (so würde jedenfalls ich ein Programm nennen, das Mediawiki nach html konvertieren soll) könnte noch einige Hinweise geben.
    http://lists.wikimedia.org/pipermail/mediawiki-l/ könnte noch ein Ansatzpunkt für Recherche oder Nachfrage sein.

    Gruß

    Swen

    1. So weit mir bekannt: Nein. http://meta.wikimedia.org/wiki/Alternative_parsers gibt einen ziemlich guten und Dich wahrscheinlich etwas enttäuschenden Überblick. Google nach mw2html (so würde jedenfalls ich ein Programm nennen, das Mediawiki nach html konvertieren soll) könnte noch einige Hinweise geben.
      http://lists.wikimedia.org/pipermail/mediawiki-l/ könnte noch ein Ansatzpunkt für Recherche oder Nachfrage sein.

      Danke, lieber Swen für deine Antwort und die Links.
      Allerdings muss es irgendwie gehen, da es beispielsweise für Joomla ein Addon gibt, das genau diese Funktion hat.

      Ich werde mich weiter umhören. Danke!

      Gruß Manuel

      1. Hallo,

        Danke, lieber Swen für deine Antwort und die Links.
        Allerdings muss es irgendwie gehen, da es beispielsweise für Joomla ein Addon gibt, das genau diese Funktion hat.

        Du meinst http://www.transarte.net/mediawiki/index.php/Wiki2joomla? Habe ich mir eben durch Deinen Hinweis ergoogelt und kenne ich nicht. Wenn das klappt und Du dann mit dem joomla-Ergebnis besser weiterarbeiten kannst, mag das zwar umständlich, aber immerhin erfolgreich sein?
        Gruß

        Swen

  3. Hallo Manuel,

    Die "gesammelten Daten" sollen aber nicht im Wiki bleiben, sondern auf der Homepage zur Verfügung gestellt werden. Ein kopieren der Inhalte kommt nicht in Frage. Außerdem sollte die Struktur und die Möglichkeiten, die das Wiki bietet nicht eingeschränkt werden.

    Verstehe ich dich richtig: Ihr habt ein Wiki, womit ihr intern die (ein Teil der) Seite bearbeitet, die Besucher sollen das aber nicht zu sehen bekommen?
    Ich weiß nicht, obs dir was bringt, aber: ?action=render

    Viele Grüße aus Freiburg,
    Marian

    --
    Microsoft broke Volkswagen's world record: Volkswagen made only 22 million bugs!
    <!--[if IE]><meta http-equiv="refresh" content="0; URL=http://www.getfirefox.com"><[endif]-->
    1. Verstehe ich dich richtig: Ihr habt ein Wiki, womit ihr intern die (ein Teil der) Seite bearbeitet, die Besucher sollen das aber nicht zu sehen bekommen?

      Ja, das verstehst du vollkommen richtig!

      Ich weiß nicht, obs dir was bringt, aber: ?action=render

      Vielen Dank! Das hilft auf jeden Fall! Jetzt muss ich nur noch rausfinden, wie ich den Quelltext aus der URL in eine Variable bekomme, so dass ich diesen weiter verarbeiten kann. Denn es muss ja das Design angepasst werden und die [Bearbeiten]-Links müssen raus.

      Außerdem habe ich leider nach wie vor das Problem, dass unser Wiki nur mit Login funktioniert. Das heißt, das muss ich auch noch irgendwie umgehen.

      Grüße aus Darmstadt
      Manuel