New requirements for settings pages & onboarding in themes

As discussed in our last meeting, we’d like to hear your thoughts on what should or shouldn’t be allowed when developing settings pages or onboarding processes in WordPress themes.

We’ve brainstormed a list of requirements, but we’d really value your input on this:


Admin notice / Theme activation

Themes must use the admin_notices hook to provide any custom messages to the user. These admin notices must either be a one-time message or permanently dismissible. This notice can be used to link to a settings page or start an onboarding process, for example. Popups are not allowed upon theme activation.

Admin page

Themes may optionally add custom sub-pages under Appearance in the WordPress admin. 

They should only contain coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. WordPress UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. elements and generally match the WordPress admin design.

If necessary, themes can include custom styles or scripts for their admin pages, but they cannot leak/spill out to other WordPress admin pages. Enqueue styles/scripts on the admin_enqueue_scripts hook and use $hook_suffix parameter to determine the page.

For ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-based admin pages, make use of Core components for features if they are available.

Additionally, themes must reference the correct user role capabilities when performing any action inside of the WordPress admin. They must also use an appropriate capability selector or function, such as canUser or current_user_can().

Inserting posts/pages via wp_insert|update_post() can be used if the action is done with user consent.

Options

Themes must use the Settings and Options APIs when storing custom settings in the database. 

Themes must also only add a single database option, which should be an array when storing multiple settings. This option must also be prefixed with the theme slug.

Themes may optionally custom core WordPress options that only affect the front-end and how the website displays (e.g., site logo, front page settings), as long as the user is notified that their saved options will be modified. User consent is required.

All data passed to add_option(), update_option(), or other functions for saving to the database must be validated and/or sanitized with the correct function or method for the data type.

Not allowed

The following features are not allowed as part of an admin menu or onboarding process:

  • Demo imports
  • External calls
  • Tracking/Affiliate links

As an example, you can check the Ollie Dash plugin. Based on a first review, we would not allow the child themeChild theme A Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/. and updater functionality.

Our goal is to put these requirements into action starting from the first month of next year, immediately following our upcoming meeting on January 9, 2024. Meanwhile, we’d appreciate it if you could share your opinions.

Wishing you a Happy Holiday and a joyful New Year! 🙂

A Year in Themes Team – 2023

Happy New Year everyone!

Here’s some data for 2023 about the WordPress themes team contribution on TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets as well as blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. theme stats.

We would like to thank everyone who got involved in reviewing themes and creating themes. We also like to thank those who attended the themes team meeting, helped to find the bug in the themes developer handbook, and did other related things for the themes team.

Please note that the stats are based on WordPress trac custom query 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. and some manual counts. If you find any stats are invalid, let us know, and we’ll check them again.

General Overview

In the year 2023,

  • 28959 tickets were opened (Both new and updated)
  • 29032 tickets were closed
    • 28499 tickets were made live. (This includes news and updates)
      • 1413 new Themes were made live. (All Block, Hybrid, or Classic Themes)
      • 27086 Theme updates were made live.
    • 525 tickets were not approved.
    • 8 tickets were closed-newer-version-uploaded.
Months/StatisticsTotalLiveNot Approved
January13610927
February987028
March14111229
April1129022
May 12310023
June15312330
July13310627
August15512431
September13311122
October1199029
November1299732
December806812

Block Themes Statistics

  • The number of Block Themes submissions: 364
    • Block themes were made live: 300
    • Block themes were not-approved: 53
    • Currently under review: 11
MonthsBlock Themes Live Number
January20
February15
March21
April26
May 21
June23
July22
August35
September35
October29
November30
December23

Block Theme Authors

Here is the list of top 10 authors by number of block themes uploaded.

AuthorsNumber of Block Themes Uploaded
codeyatri18
wpradiant17
cretathemes16
wowsthemes15
automattic14
gracethemes14
eaglethemes12
cozythemes11
catchthemes10
fly2sky9

Theme Reviewers

In the year 2023, we have 15 reviewers. Here is the list of the top 10 reviewers with the number of reviews (including not-approved).

Theme ReviewerNumber of reviews (including not-approved)
kafleg800
acosmin538
fahimmurshed69
vowelweb43
ShresthaRaaz38
bijayyadav11
aslamnaik3
rajinsharwar2

The rest of them have only 1 review per reviewer.


HelpScout Stats

In the year 2024,

Email Conversations 487Messages Received 650
Replies Sent 517Emails Created 18
Resolved 414Resolved on First Reply 85%

Block-focused Theme Handbook chapters

In this year 2023, we also worked on writing the theme handbook for the block theme.

  • Getting Started
  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Concepts
  • Global Settings and Styles (theme.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.)
  • Templates
  • Features

Extras

  • Theme Check 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 updated: 3
  • Posts published in a weekly updates site: 42
  • Total meetings hosted and notes written: 15
  • Total agenda notes written: 19
  • Total blog posts published on the Make Themes site: 52

Thank you @acosmin for helping to collect statistics and data on 26th Dec.

#themes-team, #year2023

Introducing new Themes Team representatives for the 2024 Edition


A couple of weeks ago, we issued a request for individuals interested in becoming team representatives to submit their nominations. Users could either nominate themselves or tag someone they believed would be well-suited for the position.

The post generated numerous comments containing nominations, many of which mentioned the names of the 2023 team reps. All of them will continue from the previous term; however, if someone is interested in assisting, please reach out in the comments or SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. to help.

The more help the reps have, the more they can achieve.

The 3 Themes Team representatives appointed via nominations:

  1. Acosmin (@acosmin)
  2. Ganga Kafle (@kafleg)
  3. Shiva Shanker Bhatta (@shivashankerbhatta)

Join me in congratulating all of them and expressing our best wishes for a successful tenure.

Acosmin

Acosmin is a WordPress developer and enthusiast. He published his first WP theme back in 2008 and, since then, he has contributed in various capacities as a reviewer, developer, and team representative.

He is sponsored by Extend Themes to be a part-time reviewer.

You can reach him directly via WordPress Slack, and his username is acosmin.

Ganga Kafle

Ganga Kafle (KafleG)

Ganga is a full-time sponsored WordPress contributor by Rank Math. He is from the beautiful country Nepal and working as a WordPress contributor since 2012. He has attended many WordCamps and organized some as well. Besides WordPress, he loves to spend time with friends and family.

He is also one of the organizers for 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. Asia 2024 and moderates WordPress-related Podcasts in Go With WP.

You can reach him directly via WordPress slack, and the username is kafleg.

Shiva Shanker Bhatta

shivashankerbhatta

Shiva Shanker Bhatta is the Founder/CEO at AF themes. He has more than 10 years of experience in WordPress; Community, Contributions, and Development – Basically focused on WordPress Themes and Plugins.

He had contributed ( Organized/Contributors Day Lead ) various National and International WordCamps.

You can reach him directly via WordPress Slack. His Slack username is shivashankerbhatta.

Thank you for taking on the responsibilities and keeping the tasks and team moving in a good direction.

#themes-team

Nominations Call for the themes team representatives: 2024 Edition

The Themes team is looking for team representatives for the year 2024. It’s time to nominate team representatives. We would like to request you to comment in the below comment section about your nomination. Based on the nominations, 2 themes team representatives will be elected.

Currently, @acosmin, @shivashankerbhatta, and me (@kafleg) are the team representatives

What are Team Reps?

Team reps are responsible for communicating on behalf of the team. 

In the WordPress open-source project, each team has on average one or two reps (i.e. an abbreviation for team representative).  

Read here to learn more about team reps.

Responsibilities:

  • They represent the team
  • Communication with other teams
  • Post weekly updates
  • Mentor theme reviewers 
  • Transfer themes, suspend or delist themes (if necessary)
  • Conduct team meetings, write meeting agendas and meeting notes 
  • Guide theme authors and reply to their questions 
  • Regularly check themes team email and follow-up etc. 
  • Maintain Theme Check 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
  • Review Patterns and set live or delist them, etc.

What are the qualifications?

A representative should be an active member of the WordPress Community. Someone reliable and trusted, familiar with WordPress theme development.

How to nominate someone? 

The deadline for nominations is Friday, December 15, 2023.

Nomination text sample: “I would like to nominate @nominee_wp_username”. Or you can also nominate yourself. You can write “I would like to nominate myself”. 

If you get nominated but if you are not ready for the reps, you can decline it as well.

How Will the Election Work?

If we get more than 2 names and can’t decide on reps by acceptance, then we will go with the voting like an election. We will write another post with detailed information about the voting process. (if necessary). 

Once the results are done, the new team repTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts.(s) will be announced in a new blog post. 

If you have any questions, comment below. Happy Nominating!

Themes team meeting agenda for December 12, 2023

Hello world! Welcome to the last meeting of 2023.

The themes team meets regularly on the second and fourth Tuesdays of each month. This session marks the first meeting of December, also serving as the final one for the year 2023. Given that the next meeting falls around Christmas and New Year, we have decided not to schedule the gathering during the holiday period.

The meeting takes place in the #themereview channel on WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. and you need an account to participate. Channel: #themereview | Time: Tuesday, December 12, 2023, 15:00 UTC

In addition to the scheduled agendas, we reserve time at the conclusion for an open floor session, providing an opportunity for you to pose questions or share any themes-related information.

We strongly encourage the active participation of all members and anyone with an interest in the discussion. If you have particular agenda items you would like to propose, please feel free to add them in the comment section below.

Meeting Agendas

  • Weekly updates
  • Nomination for team reps 2024 edition (Final Call)
  • Requirements for the settings/onboarding functionality
  • The year 2023 review
  • Open Floor

Looking forward to seeing you at the meeting!

#agenda, #themereview, #themes-team