You are using after_theme_switch
action but the correct name is after_switch_theme
.
Also, you won’t see the echo statements on after_theme_switch
and switch_theme
. To debug things in that hooks you can use, for example, error_log()
function and look for messages in PHP error log file (you need to have errors “On” and/or WP_DEBUG enabled).
I’ve tested this and it works:
new Activation;
class Activation {
public function __construct(){
add_action('after_switch_theme', array($this, 'themeActivation'));
add_action('switch_theme', array($this, 'themeDeactivation'));
}
public function themeActivation(){
error_log( 'activated' );
}
public function themeDeactivation(){
error_log( 'deactivated' );
}
}
Related Posts:
- get_template_part vs action hooks in themes
- after_setup_theme always runs
- How to make a function occurs for one time?
- Sizing screenshot.png without losing aspect ratio
- Should `get_template_directory_uri()` be escaped?
- How To Add New Option Types To Option Tree?
- Why doesn’t default WordPress page view use force_balance_tags?
- Page template in two level deep folder
- Automatic Updates For Private And Commercial Themes?
- Child Theme not loading parent CSS
- Where do I find the functions triggered within a hook?
- add_image_size is scaling, even though crop is set to true
- Use of undefined constant FS_CHMOD_DIR – assumed ‘FS_CHMOD_DIR’
- Registering Sidebars and Sidebar Widgets. Sidebar Widgets Not Displaying
- How do I get a parent theme modification from a child theme?
- Removing the default sidebar from admin panel
- how to pull wordpress post comments to a external page
- index.php is not loaded for single posts
- Why use while over if in single wordpress posts?
- WordPress website loads but is not displayed until page scrolled
- How to set page template on front using starter content?
- Different Admin Theme – Based on Role?
- Theme Customizer not loading
- Is it a good idea to make whole theme widgetized?
- Finding Page Template and Displaying Content
- Single Theme folder for Multiple WordPress
- Override Constants in Child theme
- How i can get widgets areas working in customizer?
- Cutomize Colors utility: How to add more configurable colors to a theme
- Where is definied the theme location for the main menu in a WordPress template?
- How to disable automatic colors in the Twenty Twenty theme?
- Gutenberg – editor-font-sizes in functions not working
- Cannot figure out how to overwrite files in child theme
- WordPress post arrangement using post_class
- Customize the previous_post_link output
- How to use get_template_part instead of include_once?
- How to remove comment link title attribute?
- Translation Issue with WordPress Theme Check in comment_form function
- wp-cli: For development, how can I activate a theme that is on the local disk but not zipped?
- My Admin bar covers my sticky navbar [closed]
- Single Page Design, Storing in Theme Options
- How to edit theme functions file to modify pagination?
- Edit footer via customizer
- loading blank white screen of slide
- Child Theme’s style.css not loading in mobile browser
- Migrated WordPress site renders Chinese
- How to Find the Page the Front Page is Using?
- How do I get the trackback count of a post in wordpress without writing an SQL query?
- WordPress 3.8 Backend Admin Color Scheme add more scheme how to do?
- 3 Level Deep Navigation Menu Not Showing All Levels
- How to Have a Pure HTML Sub Directory In WP Site
- Theming Using Bootstrap Glyphicons and WordPress Dashicons
- Overide enqueue in non plugable function via child theme
- featured content: which area does this cover [closed]
- WordPress page/blog incorporated into static website
- Random white space before doctype
- How to add menù section to my WordPress template?
- What are the critical theme files when building a custom theme?
- Having issue with WordPress wp_enqueue_style
- Starting point for custom Themes [closed]
- Theme Development -> Specific Homepage
- Which cache is kicking
- Is there a way to switch to another theme?
- How add built-in textarea in theme development?
- How to use the _S framework
- When trying to set title, not sure how to edit it for different pages
- Post archives link yields a 404 Not Found
- Get video from the post on homepage
- static front page ONLY for certain themes?
- How to add cropped custom header image?
- WordPress Themes Directory: Template which hits the standards?
- How to change a local wordpress installation xml export file urls? and change them to what if you don’t have a live website?
- Any way to change/add to the theme name dynamically?
- Let user to upload multiple time
- How to make menus, footer, sidebars multi language
- Different WP Rest API custom endpoints across different themes
- Menu names not getting translated
- Get property of non-object on theme activation
- change wordpress website logo url [duplicate]
- register_theme_directory() sees custom themes directory, but blank frontend
- wp_editor some functionality not working on custom theme
- Update modified Shopify third-party theme [closed]
- hide/show a div in wordpress
- How one category can have different fields?
- How to create multiple pages in a client theme?
- Using Customizer value in an external PHP file inside a theme
- Import from HubSpot COS into WordPress 4?
- Theme customizer live preview JS- Trying to bind to an html image url without luck
- Theme automatically inserting “more” tag on every post
- How get the 10 most viewed pages (not post)
- adding navigation to genesis themes
- Using wp_enqueue_script with social media buttons?
- Purchased Theme to Custom Made Theme? [closed]
- How to make website with many template that active [closed]
- Image Size wrong during upload
- How to create full header but keep content narrow
- Correct way to make a custom block theme responsive
- How to make a multilingual wordpress site to be translated one-to-one without much effort and without using translate?
- Is there a way to have WordPress autodetect page templates in the page-templates directory and any sub-folders?
- My wordpress site memory exhausted more than 1GB trying to debug with default