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

Contributing instead of reinventing the wheel #316

Open
4 tasks done
carstingaxion opened this issue Aug 13, 2023 · 9 comments
Open
4 tasks done

Contributing instead of reinventing the wheel #316

carstingaxion opened this issue Aug 13, 2023 · 9 comments

Comments

@carstingaxion
Copy link

carstingaxion commented Aug 13, 2023

Hello @ all contributors and maintainers,

I also do and did a lot of theater websites with WordPress.

In the past I wasn’t that happy with how wp-theatre handles some things, e.g. querying by post-meta within primary queries.
I haven’t had a look, if the plugin still works this way. But my point of view has changed from another -let’s say- angle. Instead of pure, individual solutions for people doing theater, I’d also like to contribute more of my theater-code, to the WordPress community and people interested.

This is where I return to you, because wp-theatre has many things prepared nicely for being a cool opensource project, be it the developer docs, the website or the people already using it.

I want to help prevent such issues at your place instead of starting from scratch and rebuild many things you already did. And I more likely wanted to enhance an existing plugin instead of creating a 60.000 + 1 plugin.
I would like to share, contribute and (maybe) integrate one or more of the following:

  • FSE Blocks for postmeta of productions (duration, audience, premiere-date)
  • FSE patterns with theater-context
  • production subsites as an explicit, new post_type which allows to create hierachical urls below productions, without polluting the productions post_type archive, feeds or queries; e.g.ˋ example.com/productions/faust/videosˋ
  • statistics per production based on events with some extra post-meta; e.g. „played x times“, „awarded y times“ or „showed z times during a festival“, with a new stats-column in wp-admin and some fse Blocks for the frontend

All mentioned functions are already running in production on different sites and are not just ideas. But only some of those things are capsuled in own plugins, some code is messed within custom themes, some is part of bigger custom plugins.

Now, that I‘going to start rewriting my code as extensions here are my questions:

  • are there any / shouldn‘t we follow some coding standards?
  • Is there any thing more to know or to read, other than the example plugin?
  • Do the extensions also „benefit“ from the (automated) developer documentation, how should I prepare my code to be best parseable?
  • What are your thoughts on all this (code ideas)?
@slimndap
Copy link
Owner

Hi Carsten,

This sounds great. I would be very interested in helping you with this.

are there any / shouldn‘t we follow some coding standards?

In this project I tried to follow the WordPress coding standards, but I am aware that I didn't do this properly in all parts of the code.

Is there any thing more to know or to read, other than the example plugin?

The project is full of undocumented filters that you can use. You would have to dive into the code to find them.

Do the extensions also „benefit“ from the (automated) developer documentation, how should I prepare my code to be best parseable?

No, there is no automated documentation. I was all written by hand (a long time ago).

What are your thoughts on all this (code ideas)?

Be aware that the codebase for Theater for WordPress is quite old. I started this project over 10 years ago and have been learning a lot about plugin development along the way. There are definitely some parts that need improvement or a rewrite. For example:

  • The caching of production/event lists. This sometimes breaks.
  • The ordering of productions/events. This currently uses an meta field. A simple improvement would be to use the menu_order field from the wp_posts table.

@carstingaxion
Copy link
Author

carstingaxion commented Aug 14, 2023

This sounds great. I would be very interested in helping you with this.

Supercool and great, to have you responded that quickly.

Before we get into detail, let me get some clarification on the project-management stuff.

Probably a project board could help (you and) me to get a overview about everything related. Especially because you mentioned the matured codebase. But hey, WordPress is twice that old, and it's great!

I would like to start with (just) creating some issues on separate topics and questions, starting with this:

Let's go!

@slimndap
Copy link
Owner

While we're at it, I would like to add two more:

  • Rethink the data model
  • Introduce templating, eg. Woocommerce style

The result can be a 1.0 release.

@carstingaxion
Copy link
Author

While we're at it, I would like to add two more:

  • Rethink the data model
  • Introduce templating, eg. Woocommerce style

The result can be a 1.0 release.

Sure!
Thanks for coming back to this topic, I was uncertain if my suggestions where somehow not ok or not clear enough. Please feel free to ask absolutely everything about any of my ideas.

I would really appreciate to help wp-theatre to enter the FSE stage.

@carstingaxion
Copy link
Author

Correct me, when I‘m wrong:

To Rethink the data model we should have a list of currently used post_types, taxonomies, meta-data and their relations.

That looks like a good first issue or in other words a nice point to start.

@carstingaxion
Copy link
Author

Some days ago I wrote some rough ideas down, what https://websites.fuer.figuren.theater should provide to its users in the future. This is our slow growing idea of a kinda managed hosting for people doing theater, provided by their own lobbygroups and NGOs.

And for all theatre-aspects of the whole thing I hope to settle on wp-theatre to realize the previously mentioned rough ideas, which you can find at

https://github.com/orgs/figuren-theater/discussions/56

@slimndap
Copy link
Owner

slimndap commented Aug 29, 2023

If we are going to let users use existing post types (see #318), then this would no longer be a smart thing to do:

  • Use menu_order instead of post_meta for the ordering of productions/events.

The user may already be using this field for other purposes.

@carstingaxion
Copy link
Author

Hello @slimndap,

I apologize for being silently off for such a long time, after we started this very great brainstorming. Even that I did some work on code, I was unfortunately not able to communicate with you in a nice way. I struggled with my personal mental health, what is not new, but almost every year the same disgusting unsocial behavior.

I‘m really sorry about this and hope you are still interested in my contributions. After my family and me had some rest, I feel much better now and am willing to share ideas with you.

Best regards
Carsten

@slimndap
Copy link
Owner

slimndap commented Nov 8, 2023

Hi Carsten,

It's so good to hear from you again. I am glad you are doing better now.

Let's go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants