I would suggest first read the wordpress documentation about actions to understand how they work.
Actions are aplit into two section, add_action
and do_action
do_action
is the "location" where you hook into it.
A basic example of do_action
do_action('my_custom_action');
You can also pass arguments into do_action
which can be available in add_action
if you choose to use them.
Example for do_action
with arguments
do_action('my_custom_action', 'Hello', 'World!');
From the second argument forward every argument can be available in add_action
Now that we have a action we can hook into we can do the following
Basic hook (callback function) without parameters (we use the my_custom_action
action)
add_action('my_custom_action', 'my_callback_func');
function my_callback_func () {
// your login here
}
Hook with parameters. We know that my_custom_action
has two arguments we can use, in order to make them available we can do the following
add_action('my_custom_action', 'my_callback_func', 10, 2);
function my_callback_func ($param1, $param2) {
echo $param1 . ' ' . $param2;
}
The output of out callback function will be Hello World!
.
I will not go into detail what every part of add_action('my_custom_action', 'my_callback_func', 10, 2)
means, wordpress has a great documentaion about this.
Some add_actions
will have arguments, some will not, you will need to explore each do_action
you want to hook into to see what is available to you to use.
A great plugin that I use constantly when developing in wordpress is Query Monitor, amazing plugin for when you want to understand what action are being used on the current page, what priorety each callback function has, what arguments it uses and so on.
Again, first read the wordpress documentation about hooks, actions and filters, it will give you a much better understating on how they work and how to work with them.