If you follow along this thread: Plugin Directory API integration - Projects / Core Development - ClassicPress Forums
You will find out that in order to integrate the Plugin API into the admin area, there are two potential ways to go:
- Make the API spit out the data in the same or a very similar way to how the official WordPress API does it, so that the effort it takes to integrate it is minimal.
- Make the API spit out the data in a new structure, so that the effort it takes to integrate is maximal.
I wonder… why ClassicPress is preaching backwards compatibility for every small detail but then, when it comes to such a fundamental thing as replacing an API… the whole compatibility is broken. Just… why?
The API is now supposed to be finished. What takes more effort?
- Change the API
- Change the integration
I’m in to help with 1, not with 2. Where and how can I help with 1?, I see no public repository for the Plugin Directory.
If you think 2 is more optimal, let me know, that would be great to hear and understand!
This is about to be published (by my latest knowledge) and will give access to the directory and api code.
@striebwj is leading this effort.
This right after imo you should be able to start contribute to it and make changes if needed
Great, changes… if needed and approved by the community. Or it will stay stale like almost everything else.
There will be no “approved by the community” if everything goes according to plan, but rather a “approved by those who make it happen” (and of course, a due diligence of safety etc etc that will be done by the directorate/those with the keys to the systems).
The community can and will make their needs heard through usage pattern, feedback and requests.
So please do not wait for the usual “I would” discussion. Just wait for the access/public code.
Excellent and practical point of view!
For me it is the same. You have to do effort for the two cases. Maybe to change the api is faster and more logic. I can also do help with this case. But I think classic press needs to make this a priority. If I cannot use the plugins inside my admin zone, why will I use classic press and why will I submit plugins?
My Conclusion: the classic press is not useful without the new plugins page.
And just as a note. In the experimental version I created a JSON based Plugin Directory that works. Having a JSON based Plugin Directory has many benefits:
- It will live within the installation files, so it doesn’t have to be hosted by a third party.
- People can Pull-Request the JSON files to add/edit information, which makes it more collaborative.
- It doesn’t perform any http request containing your search or currently enabled plugins, so it’s more friendly with privacy. It just performs one request to download the zip file containing the plugin.
- It already works. So no need to edit the API or the Integraton. Could be implemented right now. It needs to handle updates but I’m already working on that. Simple solution: the plugin developer will host a version.txt file in the repository.
- If you are selling websites you can have your own preset list of safe plugins, and replace the whole JSON directory files so that the user only has access to the list you created. Maybe so that the person doesn’t break things or just because you want to keep things simple for that person, with a very specific list of potential plugins that may or may not be installed. Not every site needs to or even should be able to install Elementor, for example. So you could just not have this in your custom directory.
Looks like this:
Each of those json files contains everything it needs to know about the plugin.
Do you like this concept for ClassicPress? Why? Why not?