Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Talks/Profile status conversion. #9

Closed
imath opened this issue Nov 29, 2016 · 8 comments
Closed

Talks/Profile status conversion. #9

imath opened this issue Nov 29, 2016 · 8 comments
Labels

Comments

@imath
Copy link
Owner

@imath imath commented Nov 29, 2016

This is another part i've missed from https://make.wordpress.org/community/2016/05/11/wp-idea-stream-for-the-wordcamp-admin-toolbox/

I agree with @jennybeaumont when she said

it would be interesting to explore either replacing or connecting the user profiles with/to the Speaker custom post type, so that these could be validated/rejected at the end of the process. This would help automate and be a huge time saver IMO.

The plugin is already doing it in a way thanks to embeddable user profiles. If this option is activated, adding a url to a user profile into a post will generate the display of the avatar, user name and description (bio). If the logged in user can view users profile the user name is linked to the full user's profile and all the talks he submitted.

I think there are many ways to save some time, but i'm unsure what's the best option:
1/ About speakers information:

  • Add a button on the user's profile to generate a new post (potential issue here is to know the specific post type name or use an option to let the admin set it),
  • use the existing embeddable user's profile feature, by improving it so that the existing links to talks/rates or comments are replaced by social links. (Meaning a specific post type is not needed anymore).
  • another option i don't see yet 🤔

2/ About selected talks:

  • use a custom status that would automagically include the 'talks' post type into the main WP Query ? Potential problem here would be to first make sure there are no typos in the Talk's description before changing the status. Great thing would be that it would be possible, after filtering the talks within the administration by the "selected" mini workflow state, to use the bulk action to change the selected talks to the custom status.
  • or just like the profile, generate a new post with the content of the talk preloaded into the editor?
  • or another option i don't see 🤔

What do you think?

@imath imath added the question label Nov 29, 2016
@andreamiddleton

This comment has been minimized.

Copy link

@andreamiddleton andreamiddleton commented Nov 30, 2016

When this lives on WordCamp.org, we'll need to use the wordcamp.org user database, so that means we'll need to ask users to sign in using their wordpress.org profile credentials. (This has the benefit of letting us eventually tie all WordCamp speaker proposals into a network dashboard that speakers and organizers could access. Organizers could see if a speaker has proposed check on the status of their talk proposals throughout the WordCamp program, and it would also allow us to share (when we get it) attendee feedback with event organizers.)

We already have the automation in place to create a draft Session and draft Speaker CPT when someone fills out the contact form we put in the auto-created Call for Speakers post on every WordCamp, plugin here: https://meta.svn.wordpress.org/sites/trunk/wordcamp.org/public_html/wp-content/plugins/wordcamp-forms-to-drafts/ -- it would be ideal to include this feature in the WordCamp Talks plugin. :)

@imath

This comment has been minimized.

Copy link
Owner Author

@imath imath commented Dec 1, 2016

Thanks for your very interesting feedback, i think the automation would be a little different in our case as we already have a post type: the talk proposal.

We can also be more selective in the sense that if i understand well the automation in wordcamp-forms-to-drafts, it is creating speaker/session draft posts for each submitted form. In our case we can imagine to generate these posts once the talk has been selected by Admins within the Talks Dashboard.

You haven't seen this part when testing, so i'll send you credentials for an admin account so that you can have an idea of the mini workflow that can be used.

I'm not sure the speaker post is needed though. If all speakers have a WordPress.org account we can probably build a custom Users loop / profile page. The advantage of this is: the speaker can update his information in a central place, and all sites using the custom loop will benefit from it.

I like the idea of getting attendees feedback, as an "ex" speaker, i would have loved to easily get some too :) Feedbacks will be posted on the Session's post type, or it's another process ?

@jennybeaumont

This comment has been minimized.

Copy link
Collaborator

@jennybeaumont jennybeaumont commented Dec 4, 2016

My initial thoughts are:

  1. Using WordPress.org user accounts will be a very efficient and practical way to open submissions up to the community, avoiding the redundancy of creating separate user profiles for a specific WordCamp site for a specific year. This takes things even further by allowing an existing profile to not only submit multiple talks to a Camp, but to apply to multiple Camps, and lays the groundwork for future projects tying talks to the WordPress.org network. This would be amazing.

Question: what tools/code do we need to use/access in order to set this up? Who is the person to contact at .org?

  1. The Talks CPT serves the double purpose of fielding and upvoting talk submissions. I don't find it necessarily redundant with the Sessions CPT. From a UI perspective, and as an organizer, I would prefer for these two things to live in different spaces. Talks (or maybe should be renamed Submissions or Proposals?) is for process, whereas Sessions is for final publication.

Sessions is the existing post type, one that is the reference for other projects, such as the speaker feedback module David Bisset is working on; we do need to utilize it by converting/populating from Talks > Sessions for each talk once it's validated.

Question: are there more advantages to having two separate post types, or more disadvantages? If they remain separate, is it possible to populate a new Session from a Talk by going from Private > Public? Do we need to add a step?

@imath

This comment has been minimized.

Copy link
Owner Author

@imath imath commented Dec 6, 2016

@jennybeaumont everything is possible in WordPress :)

We can create a new Session post type when the Talk post type becomes public, it's just mean we need to take in account a Talk's status can be switched back to private and then remove the session talk.

But, actually, the more i think of it, the more i think the plugin can also handle the display of selected talks without using the Sessions/Speakers post types.

I've just tested this: if i switch a talk to public: any user can see it, but ratings and comments remain only viewable by jurors/raters and admins.

So it would be really easy to have the talks available once the selection is done :

  • filter talks using the mini workflow status "Selected"
  • activate each talk checkboxes,
  • use the Edit bulk action,
  • change the status to publish
    and bing it's available to regular users.

As i've commented earlier the user's profile can be used to list all speakers having a talk selected.

So WordCamp Talks can also manage this part. By the way from a DB perspective, i find it weird to have the same data saved twice for each object, when everything can be done without new post types.

But i'm fine if the best approach is to duplicate content from talks in sessions and content from users description into a speacker post type.

NB: Also, we could manage the schedule from WordCamp Talks using post metas or another taxonomy to store hours/days/rooms and generate a pages like this one dynamically. But that's probably another issue's story :)

@jennybeaumont

This comment has been minimized.

Copy link
Collaborator

@jennybeaumont jennybeaumont commented Dec 14, 2016

How many times have we thought to ourselves, "This thing in WordPress doesn't make sense. I should just rewrite the whole thing!"

If we have hopes of getting this integrated into WordCamp sites, then in my opinion, we definitely need to approach is as if we were guests in someone else's house. We will be building on top of what exists, working with it, rather than circumventing :)

Again, the Sessions and Speakers CPTs exist, and serve a specific and necessary purpose, not only for the display of individual talks and speaker bios, but also for the larger schedule/program, including times, dates and tracks.

If we decide having one single CPT for both the reception, upvoting, selection and display of talks is the way to go, then it would make sense to rewrite the plugin using the existing Sessions CPT.

I am still of the opinion that two separate CPTs makes sense, as they are two different parts of a process. From a UI perspective, I like these being physically in two different places. Note that each has taxonomies and meta data that the other doesn't need (Talk taxos could be used in Sessions—we did some cool CSS hackery last year at wceu to display categories—, but Session taxo/meta is not useful during the selection process).

Talks (or proposals?): Serves to receive, upvote, comment and select talk proposals, while using a common login/profile to facilitate the process for applicants. Categories and tags are available for desired classifications (previous versions I believe had second custom taxo). No additional meta.

Sessions: Serves to display final selection of talks and speakers. Custom taxonomy to define Tracks. Custom meta for session info includes: date, time, session time (length to calculate table display), slides URL field, WordPress.tv URL field. Custom meta to dynamically add pre-populated speakers (can be more than one).

And another reminder that this needs to be backward compatible - WordCamp sites live forever - and others are working on other projects, such as David Bisset's Session rating, that rely on the existing CPT.

Make sense? Other thoughts/opinions? :)

@jennybeaumont

This comment has been minimized.

Copy link
Collaborator

@jennybeaumont jennybeaumont commented Dec 14, 2016

This actually brings up another point, getting back to user profiles: we should probably think about standardizing the form with the Speakers CPT. Currently, forms are built via the Talks > Settings tab on a per Camp basis. Do we need that kind of flexibility, or would it be better to limit the field options?

@iandunn

This comment has been minimized.

Copy link

@iandunn iandunn commented Dec 31, 2016

I agree with Jenny that managing hundreds of proposals is a separate task from managing a couple dozen accepted talks, and the UI should reflect that. I also agree with Mathieu that it'd be odd to have separate database tables for proposed sessions and accepted sessions, since they're fundamentally the same data, just with a different status field.

Luckily, I don't think those two things are in conflict. We could a single post type post type to store both proposed sessions and accepted sessions in the back-end, while making the front-end UI easy to filter based on status, or even have separate screens the two different workflows.

cc @ptahdunbar, @dimensionmedia, since this is highly relevant to the post-session attendee-rating tool you're working on. It may make sense to integrate these two projects to some extent, rather than duplicating a lot of functionality.

@jennybeaumont

This comment has been minimized.

Copy link
Collaborator

@jennybeaumont jennybeaumont commented Feb 8, 2017

I'm closing this out and will raise Speaker CPT in a separate discussion or issue :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.