Yes, PmWiki can potentially use anything for data storage, be it plain
text, JSON, XML and/or gzipped files or any database (SQLite, MySQL,
LDAP, etc.), or even thin air.
You only need to write a new class that extends the core PageStore class
and redefine the functions exists(), read(), write(), delete() and ls()
to return the page names and attributes in the format expected by PmWiki
(associative arrays).
Your PHP installation will probably require a set of MongoDB compatible
functions among:
http://php.net/manual/en/set.mongodb.php
http://php.net/manual/en/book.mongo.php
http://php.net/manual/en/class.mongoclient.php
You should also enable UTF-8 in PmWiki before you start: the PHP
functions to encode and decode JSON data are very unreliable if the data
is not valid UTF-8 (you get blank/empty values):
http://www.pmwiki.org/wiki/PmWiki/UTF-8
The following add-ons create and use a custom PageStore class, see if
they can inspire you:
http://www.pmwiki.org/wiki/Cookbook/CompressedPageStore (gz)
http://www.pmwiki.org/wiki/Cookbook/PageTopStore (2 copies)
http://www.pmwiki.org/wiki/Cookbook/Phonebook (LDAP)
http://www.pmwiki.org/wiki/Cookbook/SessionPageStore (thin air)
http://www.pmwiki.org/wiki/Cookbook/SQLite (sqlite)
http://www.pmwiki.org/wiki/Cookbook/XMLPageStore (xml)
The SQLite recipe page also shows how one would install in config.php
such a PageStore class with or without keeping any existing core PmWiki
or custom PageStore classes.
Petko
--
PmWeekly Blog : http://www.pmwiki.org/News
If you upgrade : http://www.pmwiki.org/Upgrades
On 2017-09-22 21:29, Mckenzie Mae Weller wrote:
I'm working on a project and we'd like to set up our site in a wiki
format
(such as through PmWiki), but need to populate the wiki pages using
data
from a Mongo DB database, or something similar, that will host a number
of
JSON files.
Is this something that could be doable, and if so, are their any
examples /
tutorial-esque documentation out there to help me get started?
_______________________________________________
pmwiki-users mailing list
[email protected]
http://www.pmichaud.com/mailman/listinfo/pmwiki-users