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

Add wp theme cache command #392

Open
1 task done
spacedmonkey opened this issue Jan 16, 2024 · 7 comments
Open
1 task done

Add wp theme cache command #392

spacedmonkey opened this issue Jan 16, 2024 · 7 comments

Comments

@spacedmonkey
Copy link

Feature Request

Describe your use case and the problem you are facing

Add the following commands

wp theme cache <theme> get <key> 
wp theme cache <theme> add <key> <data>
wp theme cache <theme> delete

Describe the solution you'd like

Add command would map to the method cache_add on WP_Theme class.
Get command would map to the method cache_get on WP_Theme class.
Delete command would map to the method cache_delete on WP_Theme class.

This would help manage and clear theme related caches.

@spacedmonkey
Copy link
Author

This would be useful for cache invalidation of theme caches, related to current performance work.

CC @swissspidy @joemcgill @felixarntz

@danielbachhuber
Copy link
Member

I amenable to this. Feel free to submit a pull request, if you'd like. Here is some guidance on our pull request best practices.

@swissspidy
Copy link
Member

WP_Theme::cache_add() and WP_Theme::cache_get() are private, so we can't really use these.

The delete method is public, but maybe this could be used via wp cache delete and wp cache flush-group? The cache key property itself is also private though, so we can't really access it.

@spacedmonkey
Copy link
Author

WP_Theme::cache_add() and WP_Theme::cache_get() are private, so we can't really use these.

It maybe possible to use a reflection or copy the logic from inside these methods.

The delete method is public, but maybe this could be used via wp cache delete and wp cache flush-group? The cache key property itself is also private though, so we can't really access it.

It is not possible, as the cache key is not predictable. See. Cache key have been salted with a cache hash. Not be mention the other cache clearing that happens in the cache_delete method.

@mchirag2002
Copy link

Can we maybe try to replicate the exact functions being internally used in class-wp-theme.php for these functions? We can replicate the entire logic for the functions and along with it replicate the cache related dependencies for the CLI Command like cache_expiration and cache_hash as well.

@spacedmonkey
Copy link
Author

Can we maybe try to replicate the exact functions being internally used in class-wp-theme.php for these functions? We can replicate the entire logic for the functions and along with it replicate the cache related dependencies for the CLI Command like cache_expiration and cache_hash as well.

What would the be the benefit of that?

@mchirag2002
Copy link

What would the be the benefit of that?

The benefit would be that we shall be able to replicate the complete functionality of the private functions WP_Theme::cache_add() and WP_Theme::cache_get() directly for our CLI commands without creating any wrapper functions in the class-wp-theme.php

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

No branches or pull requests

4 participants