Feature request: additional roles for WordCamp sites

In current WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. sites, a lot of people work together on the WordCamp event. When following the traditional WordPress role scheme we should be fine when working with mostly Contributors, Editors and Authors. Unfortunately for some parts of the website, even the Editor role is not powerful enough: accessing CampTix and some parts of the budget corner (the spreadsheet) need the Administrator role.

Having the Administrator role gives users all the power on the website, and also the option to publish content. For flagship events, where there is a communication team overviewing the use of correct language and following the style guide, people publishing without their knowledge is highly undesirable. Most people are still unaware that publishing a post on a WordCamp site triggers Jetpack in sending emails to subscribers. We have seen this happen on the WCEU2023 site, we also saw this happen last year on the WCEU2022 site as well.

We would love to see the WordCamp plugins add extra roles when access to these pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party pages should be restricted to a small group of people. Administrator roles should be limited to only a few people in the team and not be used by 80% of the team.
People working on the tickets could have the role of ‘attendee manager’
People working on the budget could have the role of ‘budget manager’
By creating additional roles we can work again the way the WordPress role concept was designed and grant only a few people the right to publish content: Authors and Editors

Deadline for comments: 21 March 2023

#feature-request

Proposal for new feature on WordCamp.org sites to hide certain pages from WordPress/Search Engine search results.

The Problem

In Orange County, we organize a golf tournament for the day before WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more.. The page I’d want to hide from WordPress search is a confirmation page with details about the event for the subset of attendees who are going to that event. It’s nothing secret, just didn’t want it to be confusing for other attendees if they were searching for “golf” looking for the announcement post about the golf tournament and found the confirmation page I created.

In discussions on #meta-wordcamp another related use case was brought up by @kcristiano:

Another use case I’ve had is posting Speaker, Volunteer info, and sponsor information to the site. Much easier for those folks to find nothing “secret” beyond perhaps the date/time of volunteer event. We don’t put the page in the menu, the url is given to those who need it. Would be nice to not have search engines index and wp search not find it. Keeps all the info in the site (as opposed to Gdocs).

The Proposal

  • Create a checkbox in the publish metabox with a label “Don’t show this page in search results” (or similar messaging)
  • Create a filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. on search results query to exclude pages with the metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. key we store for the checkbox.
  • Create a filter on all related jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. api endpoints to exclude pages with the meta key we store for the checkbox.
  • Add noindex tags to pages that have the checkbox selected

Please weigh in with your thoughts on the usefulness/need for this feature.

#wordcamps #feature-request

The new WordCamp base theme: CampSite 2017

In our last post on the current status of the new WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. base theme, we got some great feedback on how to improve the theme even further. The feedback has been implemented and the new theme is ready for review.

“Day of” page template

One of the ideas from the feedback we wanted to implement was the “day of” template. This is a page template with some additional widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. areas. They can be used to arrange a page, that can be used on the day of the WordCamp. Things you might want to have on homepage on that day: the schedule, directions, social media stream, information about the after party, etc. As in the widget areas, you can use shortcodes in text widgets, it’s very easy to dynamically setup such a page.

Example of the day of template

This is an example on how this could look like. The width of the widget areas can be adjusted using CSSCSS CSS is an acronym for cascading style sheets. This is what controls the design or look and feel of a site..

A11yAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)

As the new theme is based on the latest version of Underscores, it already comes with a lot of a11y improvements. But themes like TwentySeventeen even go one step further. So, for the two navigations we have on the site, we implemented the improvements from TwentySeventeen (like including a “dropdown-toggle” button next to sub menus).

Ready to review

We believe, that the new theme is ready to go live on WordCamp.org, so we would like to invite you, to review the current codebase on Github.

The theme itself comes with no style (except for some basic CSS from Underscores). For WordCamp Europe, we just finished our complementary style guide we presented in our first blog post and we will publish it in the next days for any WordCamp to use.

#feature-request #wordcamps #wceu #campsite-theme

Feature Request: Give WordCamp attendees ability to mark/save sessions of interest on camp schdeule

Attending WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. is great, but as an attendee I have to repeatedly refer to the schedule to see which talks I wanted to go to next and which room I should be in, etc. I’d like to suggest a new feature to enable users to create a custom track from a published schedule on a WordCamp website. A way for users to select their desired session and somehow save this “custom” track or collection of sessions.

What does saving mean?

I think the MVPMinimum Viable Product "A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia would be save and print or email the custom schedule/agenda. The user would select one talk (maybe more? if they’re interested in multiple sessions) per time slot to attend by clicking that slot in the schedule, and visually the schedule would highlight marked sessions. Perhaps selecting a session would even create a new list of sessions as that attendees custom agenda for the Camp and that agenda can be printed. I’m sure proper UXUX UX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it. would deem it necessary to include some type of buttons or interface to add a session to an agenda and then to remove selected sessions too. As MVP, this could be front-end only and not even save any data. It could populate an email or be ready to print – or even simply allow users to keep the page open on their phone for quick glances during the conference.  I especially see this agenda layout being useful on mobile, where it’s tough to fit a complex schedule.

For a nicer experience though, the site would save the user’s selections and allow them to return to the schedule to see their saved/selected sessions. Ideally this would be tied to their .org account or something so either on the computer or phone they could log in and view their saved agenda.

How could it be useful to more than just the attendee?

Then if we end up being able to save this data, why not allow users to opt-in to share their schedule with other attendees or even the public. Attendees and sessions are displayed, let’s connect them. Each session abstract could indicate interest either by how many attendees have selected this talk or even list all interested attendees. I could see this being useful information to gauge general interest for talks and may help ensure to have ample space for each session. For example, if one session has a high level of interest it could be moved to a larger room to account for more attendees. Anyways, I digress…

Here I’ve mocked up a quick and ugly schedule with some marked sessions:

wordcamp raleigh schedule with marked sessions

Here’s a nasty screenshot of a schedule for WordCamp Raleigh with sessions marked as proposed. Notice there are two sessions saved at 11am, while only one session for later times.

The main point here is to have a way that when viewing the WordCamp schedule, attendees can select which sessions they are most interested in to create their own agenda during a WordCamp, and then a convenient way for users to save this agenda for quick reference during WordCamp. Sharing this interest may help attendees network and connect with others before and during the event. This data could possibly provide general feedback to organizers for planning purposes too.

I don’t believe this is the first time this type of idea has come up and I’ve had positive feedback from others and hope this can generate a useful discussion and roadmap. Thoughts?

#improving-wordcamp-org, #wordcamp-org, #wordcamps #feature-request

Improvements to the attendees shortcode

With large WordCamps like WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe and WordCamp US, the current implementation of the attendees shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. becomes a problem. Showing more than 2000 attendees on a single page is not only bad for performance, but also for UXUX UX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it. (like scrolling such a long page on a mobile and loading all the attendees including images).

Current performance optimizations

The current implementation of the shortcode has some tricks to increase the performance. For longer attendees lists, they are loaded in batches of 200. The generated HTMLHTML HTML is an acronym for Hyper Text Markup Language. It is a markup language that is used in the development of web pages and websites. of all attendees is cached in a transient for 1 hour (24 hours after the WordCamp).

To help with the attendees GravatarGravatar Is an acronym for Globally Recognized Avatar. It is the avatar system managed by WordPress.com, and used within the WordPress software. https://gravatar.com/. images, a lazy loading mechanism was implemented. This is very useful not only on desktop, but also helps on mobile saving bandwidth.

Improvements with the new shortcode

For the new default theme the WordCamp Europe team is working on, “CampSite 2017”, we first thought about implementing an archive page for the attendees page. But this would be inflexible and it would also only help the new default theme. The current shortcode also offers some attributes to show content gathered from attendees through additional questions. This would not be as easy with an archive page template. So we instead are trying to improve the shortcode.
Adding pagination to the shortcode
Although the current shortcode has an posts_per_page attribute, this does not add a pagination to the shortcode, but only reduces the number of visible attendees. So that doesn’t help. But we changed this attribute to enable pagination links, if present:

Attendees list with pagination links

The pagination use function paginate_link with accessible links.

Adding a search for attendees

One benefit of having all attendees on a single page is an easy search for them using the browser search. On a paginated page, a search makes it also easy to search for friends and colleagues on the attendees list. Adding the search field can be done with the new with_search attribute set to true:

Attendees list with search field

The search result is also paginated with the same number of attendees per page.

Keeping backward compatibility

As changing the shortcode will affect any WordCamp site, we implemented the new features in a way, that they are only active, if the attributes posts_per_page and/or with_search are set. We also kept the image lazy loading and we still cache the resulting HTML (per page/search) in a transient.

Feedback

For the upcoming WordCamp Europe (June), we would really like to see this new feature available as soon as possible. Please feel free to give us your feedback on the new functionality so we can move forward.

#wordcamps #feature-request