Title: Multiple actions on init hook
Last modified: April 14, 2026

---

# Multiple actions on init hook

 *  Resolved [denis24](https://wordpress.org/support/users/denis24/)
 * (@denis24)
 * [3 weeks, 3 days ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/)
 * I’m using Query Monitor to identify and fix issues that may be slowing down this
   site.
   I’ve found that the **init** hook triggers 25 identical actions in WPForms
   Lite:wp-content/plugins/wpforms-lite/src/WPForms.php:418
 * That line 418 is:
 *     ```wp-block-code
       $callback = function () use ( $full_name, $id, $run, $hook ) {
                   if ( ! class_exists( $full_name ) ) {
                       return;
                   }
   
                   // Instantiate class.
                   $instance = new $full_name();
   
                   $this->register_instance( $id, $instance );
   
                   if ( $run && method_exists( $instance, $run ) ) {
                       $instance->{$run}();
                   }
               };
       ```
   
 * How can this be prevented?
   I thought that my contact form was corrupted, so I
   deleted it, and then deactivated and removed the plugin entirely (first checking
   the box to remove all forms & data upon removal). I then reinstalled WPForms 
   and recreated my form. The issue remains.
 * PHP 8.3
   WordPress 6.9.4WPForms Lite 1.10.0.4 
    -  This topic was modified 3 weeks, 3 days ago by [denis24](https://wordpress.org/support/users/denis24/).
 * The page I need help with: _[[log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fwordpress.org%2Fsupport%2Ftopic%2Fmultiple-actions-on-init-hook%2F%3Foutput_format%3Dmd&locale=en_US)
   to see the link]_

Viewing 4 replies - 1 through 4 (of 4 total)

 *  Plugin Support [Amjad Ali](https://wordpress.org/support/users/amjadali688/)
 * (@amjadali688)
 * [3 weeks, 1 day ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/#post-18881487)
 * Hi [@denis24](https://wordpress.org/support/users/denis24/) ,
 * Thanks for reaching out.
 * To check this and assist you further, could you please share a **screenshot from
   Query Monitor** showing the 25 actions triggered on the `init` hook? This will
   help us take a closer look at what’s being reported.
 * Once we have that, we’ll be able to guide you better.
 * Thanks!
 *  Thread Starter [denis24](https://wordpress.org/support/users/denis24/)
 * (@denis24)
 * [3 weeks, 1 day ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/#post-18882291)
 * Here’s a screenshot of part of the Query Monitor results. As I said, there are
   25 identical actions in WPForms Lite. They didn’t all fit on my screen.
 * [https://drive.google.com/file/d/1_sBJbdeQZCzGwlwWr6XnaJj5fmnxiR0h/view?usp=drive_link](https://drive.google.com/file/d/1_sBJbdeQZCzGwlwWr6XnaJj5fmnxiR0h/view?usp=drive_link)
 *  Plugin Support [Amjad Ali](https://wordpress.org/support/users/amjadali688/)
 * (@amjadali688)
 * [3 weeks ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/#post-18882858)
 * Hi [@denis24](https://wordpress.org/support/users/denis24/) ,
 * Thanks a lot for sharing the screenshot.
 * What you’re seeing in Query Monitor can look a bit confusing at first, but it’s
   actually expected behavior.
 * Those 25 callbacks all point to the same line because they’re registered through
   the same method, but they’re not duplicates. Each one is a separate callback 
   that loads a different part of WPForms, such as different field types like Address,
   Date/Time, File Upload, Phone, and others.
 * These are intentionally hooked into `init` so everything loads at the right time,
   once WordPress is fully ready for things like localization and core functionality.
   Query Monitor groups them under the same source line, which is why they appear
   identical even though they’re doing different jobs.
 * So in this case, there’s nothing to fix or prevent, this is part of how WPForms
   initializes its features.
 * Hope that helps!
 *  Plugin Support [Amjad Ali](https://wordpress.org/support/users/amjadali688/)
 * (@amjadali688)
 * [2 weeks, 3 days ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/#post-18886025)
 * Hi [@denis24](https://wordpress.org/support/users/denis24/) ,
 * We haven’t heard back from you in a few days, so I’m going to go ahead and close
   this thread for now. But if you’d like us to assist further, please feel welcome
   to continue the conversation.
 * Thanks!

Viewing 4 replies - 1 through 4 (of 4 total)

You must be [logged in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fwordpress.org%2Fsupport%2Ftopic%2Fmultiple-actions-on-init-hook%2F%3Foutput_format%3Dmd&locale=en_US)
to reply to this topic.

 * ![](https://ps.w.org/wpforms-lite/assets/icon.svg?rev=3254748)
 * [WPForms - Easy Form Builder for WordPress - Contact Forms, Payment Forms, Surveys, & More](https://wordpress.org/plugins/wpforms-lite/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/wpforms-lite/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/wpforms-lite/)
 * [Active Topics](https://wordpress.org/support/plugin/wpforms-lite/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/wpforms-lite/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/wpforms-lite/reviews/)

## Tags

 * [database](https://wordpress.org/support/topic-tag/database/)

 * 4 replies
 * 2 participants
 * Last reply from: [Amjad Ali](https://wordpress.org/support/users/amjadali688/)
 * Last activity: [2 weeks, 3 days ago](https://wordpress.org/support/topic/multiple-actions-on-init-hook/#post-18886025)
 * Status: resolved