Plugin Suggestion: Glossary

So, I've been using WP Glossary on a number of my sites, and it is quite good, for what it does. However, it seems that there are a number of missing features which would take the concept (i.e., a site-specific glossary plugin) and make it a great addition to the WPMU DEV lineup.

WP Glossary is, unfortunately, limited to the site on which it is installed. For most setups, this is probably fine, but MultiSite installs would likely benefit from a central glossary + subsite glossaries setup. This should be relatively easy to achieve with CustomPress.

In essence, what I'm suggesting is the following:

WPMU DEV Glossary
A glossary plugin, based on CustomPress, with built-in WordPress MultiSite support.

A centralized glossary (e.g., glossary.example.com), with a list of terms managed by the super admin or any administrator of the glossary subsite. The subsite could be configured to display both the global glossary and a list of subsite glossaries (e.g., glossary.example.com could be the network glossary, and glossary.example.com/global/ or something similar could be a global list of defined terms across the network).

Independent, subsite glossaries (perhaps with synching support). Each subsite could have its own glossary, which would be a simple list of terms and definitions (i.e., custom post types). The terms could be inserted on a subsite with a [glossary] shortcode, perhaps with a flag for determining if the plugin looks in the network glossary or the local glossary (e.g., type="network / 1" for network glossary terms, with a default of "local / 2"). Synching between subsites could enable collaborative glossary creation (perhaps synching could be configurable to limit which categories sync).

Category support, so that a single site can have one cohesive glossary, but numerous different categories for organization/display purposes (easily achieved with CustomPress). This would likely benefit from integration into the [glossary] shortcode, or, perhaps, a second shortcode for inserting the entire glossary instead of just a term (e.g., [glossary_list] or similar).

Shortcode
In addition to the features mentioned already, supra, the [glossary] shortcode could automatically generate hover text (akin to what WP Glossary does now, though preferably a bit faster than the current Ajax implementation in v3.0). This could be toggled between the full content of the glossary entry and the glossary entry's excerpt (this would be particularly helpful for sites with long glossary entries that still want to have usable hover text).

That seems to be about it for this plugin suggestion. Any comments, tweaks, or other input is, of course, welcome. Oh, and be sure to add your +1!

  • PC

    Hello @Zyniker

    Greetings and thanks for posting on the forums and the great suggestion.

    I have changed the title and moved the thread to the right category under "Features and Feedback" and have also sent a note to our lead developer and support team for their feedback on this one :slight_smile:

    Having something like that in our kitty would be a great addition. So it's a +1 from me.

    Cheers
    PC
    Sales &Support

  • Elliott Bristow

    Nice idea. The shortcode method would definitely be the easiest way to display it. you could have:

    [glossary] : Local site glossary only (allowing individual glossaries if wanted)
    [glossary global="true"] : Global glossary (including the glossary from local site and the parent site)
    [glossary others="true"] : Grab all glossaries from all sub-sites on the network (although sub-sites would need an option to exclude their glossary from this shortcode)

    You could then have attributes for links to a specific glossary term:

    [glossary_link term="WPMU" global="true"] : Display a link to the term "WPMU", using the global glossary in preference to the local site if it exists.

  • Zyniker

    That's pretty much exactly what I was thinking with the shortcodes. While there's an argument to be made for shorter shortcodes (e.g., gterm and glist), it's probably best to keep the full-length [glossary] and [glossary_list] to avoid confusion or conflicts.

    As for the actual shortcodes, I was thinking something along these lines:

    [glossary]
    Used to insert terms into posts/pages.
    Flags
    network / global - whether the shortcode should pull the term from the network-wide glossary or the local, site-specific glossary (could default to local, i.e., "0")
    slug - the term's slug, i.e., the way the shortcode would be able to locate the appropriate term to insert

    So, [glossary network="1" slug="wordpress" /] would pull up the definition of the term with the slug "wordpress" from the network-wide glossary and display the title of that term inline with the term's definition or excerpt as hover text (the ending "/" makes it a standalone insert, cf. with the following example, infra).

    [glossary slug="wpmu-dev"]WPMU DEV[/glossary] would pull up the definition of the term with the slug "wpmu-dev" from the local, site-specific glossary (due to the lack of a flag for "network", which defaults to "0") and then turn the "WPMU DEV" text into the link to the term with hover text.

    [glossary_list]
    Used to insert glossaries into posts/pages.
    Flags
    network / global - same as for the [glossary] shortcode, supra
    type - could allow for several different types/styles of glossaries to be inserted
    category - a limiting flag, would limit the glossary inserted to a particular category, instead of displaying the entire glossary

    So, [glossary_list type="1" category="wordpress"] would generate a glossary listing all terms in the "wordpress" category and the glossary would have a style/type of "1" from the local, site-specific glossary.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.