Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
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
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:
2/ About selected talks:
What do you think?
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. :)
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 ?
My initial thoughts are:
Question: what tools/code do we need to use/access in order to set this up? Who is the person to contact at .org?
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?
@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 :
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 :)
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? :)
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?
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
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.