Integrate with WordPress

From Gramps
Jump to: navigation, search

Integrating GRAMPS and WordPress is a very straightforward activity. Not a lot of special skills or tools are required in order to make this integration work smoothly.

A couple of points worth remembering (knowing?) first:

  • Don’t expect to update your GRAMPS data through WordPress. GRAMPS works best from a data collection and manipulation perspective as a stand alone PC application.
  • Neither database is ever truly linked in this integration;this is good for a number of reasons:
    • Your GRAMPS database can be secured (remain private)
    • Breaking one system doesn’t break everything; a good feature for those of us prone to checking our systems recovery processes regularly.
  • Websites are better for sharing information than they are for updating it. This is especially true if you have constrained network bandwidth, lots of different media and files of varying sizes including many that are BIG! These conditions probably encompass most people doing genealogy.

So on to the integration… there are basically 5 major steps:

  1. Get an iframe plug for use in WordPress- I use and like Iframe Embedder from de77.com
  2. Modify one of the pre-existing GRAMPS css templates used by GRAMPS NAVWEB to generate websites to blend with your site look & feel (I use Geany as my css editor)
    1. rename and save the new CSS template in /usr/share/gramps/data/ (Linux path to the templates– maybe one of our readers can tell us what the Windows path might be)
    2. you also need to add the new css option to constants.py in /usr/share/gramps/ReportBase (Linux path to the templates)
    3. if you are running on Linux- like me- you will need root privs to perform the above 2 steps
  3. Go to Reports-Web Pages–Narrated Web Site and generate a web site via this GRAMPS function.
  4. Copy the GRAMPS NAVWEB website that is generated on to your WordPress site somewhere where you will find it.
  5. Generate a Page in WordPress for your GRAMPS Website to be located. Add the following if you are using Iframe Embedder  : [ iframe NAVWEB-url 100% 200]