Theme Activate Hook. I have that code here just name the file theme_activation_hook.php
like on the website and copy this.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | <?php /** * Provides activation/deactivation hook for wordpress theme. * * @author Krishna Kant Sharma (http://www.krishnakantsharma.com) * * Usage: * ---------------------------------------------- * Include this file in your theme code. * ---------------------------------------------- * function my_theme_activate() { * // code to execute on theme activation * } * wp_register_theme_activation_hook('mytheme', 'my_theme_activate'); * * function my_theme_deactivate() { * // code to execute on theme deactivation * } * wp_register_theme_deactivation_hook('mytheme', 'my_theme_deactivate'); * ---------------------------------------------- * * */ /** * * @desc registers a theme activation hook * @param string $code : Code of the theme. This can be the base folder of your theme. Eg if your theme is in folder 'mytheme' then code will be 'mytheme' * @param callback $function : Function to call when theme gets activated. */ function wp_register_theme_activation_hook($code, $function) { $optionKey="theme_is_activated_" . $code; if(!get_option($optionKey)) { call_user_func($function); update_option($optionKey , 1); } } /** * @desc registers deactivation hook * @param string $code : Code of the theme. This must match the value you provided in wp_register_theme_activation_hook function as $code * @param callback $function : Function to call when theme gets deactivated. */ function wp_register_theme_deactivation_hook($code, $function) { // store function in code specific global $GLOBALS["wp_register_theme_deactivation_hook_function" . $code]=$function; // create a runtime function which will delete the option set while activation of this theme and will call deactivation function provided in $function $fn=create_function('$theme', ' call_user_func($GLOBALS["wp_register_theme_deactivation_hook_function' . $code . '"]); delete_option("theme_is_activated_' . $code. '");'); // add above created function to switch_theme action hook. This hook gets called when admin changes the theme. // Due to wordpress core implementation this hook can only be received by currently active theme (which is going to be deactivated as admin has chosen another one. // Your theme can perceive this hook as a deactivation hook. add_action("switch_theme", $fn); } |
If you like this question & answer and want to contribute, then write your question & answer and email to freewebmentor[@]gmail.com. Your question and answer will appear on FreeWebMentor.com and help other developers.