bu-ist / responsive-framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Idea: Projects Plugin

acketon opened this issue · comments

Over the years we've had a number of web projects that required a post type to list, display, and filter/sort content that is maybe best described under a generic label such as "Projects".

The requirements are often largely the same, with some unique features but they often share a core set of needs:

  • Compatible with "turn-key" Responsive Framework so a child theme is not needed to use this plugin.
  • Separate these posts from regular page or post types in the admin and to visitors
  • Provide an archive that lists all of these projects.
  • Support some or all of the following custom post meta:
    • Project Description / Overview
    • Project Team:
      • Name, photo, bio, link, etc
    • Gallery/Media picker to attach photos or media library items
  • Support some or all of the following taxonomies:
    • Status: (ongoing, completed, etc)
    • Category: hierarchical taxonomy to organize these posts
  • Provide an archive template (or custom page template) that has basic filtering by taxonomies such as status and category.
    • Bonus points: URL based filtering so users can link to a list of Ongoing Projects
  • Provide a shortcode and/or Gutenberg block that lists:
    • A single project
    • Lists a few projects by taxonomy terms

If we had a generic post type that supported all or some of these items and allowed for some customization it could be used as the base for the following use cases:

Further customizations that could make this more useful:

  • Ability to rename labels of the post type in the admin so "Projects" could be renamed "Research Projects" or "Case Studies"
  • Ability to turn on/off postmeta fields or metaboxes for the post type so unneeded fields aren't shown.
  • Ability for a child theme to extend the postmeta via filters to add new CMB2 fields
  • Ability for a child theme to override the template parts for shortcode or gutenberg block or other areas of the plugin.

The project team idea is really interesting. I've got some qs:

  • Should this be integrated with BU Profiles? ie, select profiles or just have a list of names?
  • I see in one of the examples project team members are in groups (Project Management, etc) Do we need this ability in this plugin?
  • If we are able to get custom post types working with https://github.com/bu-ist/responsive-framework/issues/242, will that satisfy the need for an archive template with filtering?

The project team idea is really interesting. I've got some qs:

  • Should this be integrated with BU Profiles? ie, select profiles or just have a list of names?
  • I see in one of the examples project team members are in groups (Project Management, etc) Do we need this ability in this plugin?
  • If we are able to get custom post types working with #242, will that satisfy the need for an archive template with filtering?
  • Integrating with BU Profiles... hmm, yeah that might be nice. I could see a metabox with the option to select a profile that exists OR enter name/email/title/etc into postmeta.
  • Groups for project team members: IMO this is probably not needed for most use cases. Or could come later?
  • Yes, I think #242 could satisfy the archive template needs. I haven't read all of the requirements of that issue but at a glance I don't see why not.