Bird
Raised Fist0
Wordpressframework~5 mins

Plugin header and activation in Wordpress - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of the plugin header in a WordPress plugin?
The plugin header is a specially formatted comment block at the top of the main plugin file. It provides WordPress with essential information like the plugin's name, version, author, and description so WordPress can recognize and display the plugin in the admin area.
Click to reveal answer
beginner
Which minimum fields are required in a WordPress plugin header for it to be recognized?
At minimum, the plugin header must include the 'Plugin Name' field. Other fields like 'Description', 'Version', and 'Author' are recommended but not strictly required.
Click to reveal answer
beginner
How do you register a function to run when a WordPress plugin is activated?
You use the register_activation_hook function, passing the main plugin file path and the function name you want to run on activation. This function runs once when the plugin is activated.
Click to reveal answer
intermediate
What kind of tasks are typically done in a plugin activation hook?
Common tasks include creating database tables, setting default options, or initializing plugin settings. These prepare the plugin to work correctly after activation.
Click to reveal answer
beginner
Show an example of a minimal WordPress plugin header.
/* Plugin Name: My Simple Plugin Version: 1.0 Author: Your Name Description: A brief description of what the plugin does. */
Click to reveal answer
What is the main role of the plugin header in WordPress?
ATo store user data
BTo style the plugin's admin page
CTo provide WordPress with plugin information for recognition
DTo activate the plugin automatically
Which function is used to run code when a plugin is activated?
Aregister_activation_hook
Badd_action('init')
Cplugin_activate()
Dactivate_plugin()
Which field is mandatory in the plugin header for WordPress to recognize the plugin?
AVersion
BPlugin Name
CAuthor
DDescription
What is a common use of the activation hook in a plugin?
ADisplaying the plugin UI
BRunning on every page load
CStyling the website
DCreating database tables
Where should the plugin header be placed in the plugin file?
AAt the very top of the main plugin PHP file
BInside a function
CAt the bottom of the file
DIn a separate config file
Explain what a WordPress plugin header is and why it is important.
Think about how WordPress knows your plugin exists.
You got /3 concepts.
    Describe how to run code when a WordPress plugin is activated and give examples of what you might do in that code.
    Activation happens once when the user turns on the plugin.
    You got /2 concepts.

      Practice

      (1/5)
      1. What is the main purpose of the plugin header in a WordPress plugin?
      easy
      A. To style the plugin's admin page
      B. To run code when the plugin is activated
      C. To connect the plugin to the WordPress database
      D. To provide WordPress with information about the plugin like name and version

      Solution

      1. Step 1: Understand the role of the plugin header

        The plugin header is a comment block at the top of the main plugin file that tells WordPress details like the plugin's name, version, author, and description.
      2. Step 2: Differentiate header from activation code

        Activation code runs when the plugin is turned on, but the header only provides metadata to WordPress.
      3. Final Answer:

        To provide WordPress with information about the plugin like name and version -> Option D
      4. Quick Check:

        Plugin header = plugin info [OK]
      Hint: Plugin header is metadata, not code execution [OK]
      Common Mistakes:
      • Confusing header with activation hook
      • Thinking header runs code
      • Assuming header styles plugin pages
      2. Which of the following is the correct way to start a plugin header in a WordPress plugin file?
      easy
      A.
      B.
      C. /*\nPlugin Name: My Plugin\n*/
      D. "

      Solution

      1. Step 1: Recognize the plugin header format

        The plugin header must be a PHP comment block at the top of the main plugin file, starting with and ending with */ ?>.
      2. Step 2: Check each option's syntax

        uses the correct PHP comment block format. uses a single-line comment which WordPress does not recognize as a header. /*\nPlugin Name: My Plugin\n*/ is a string, not a comment. " is an HTML comment, which WordPress ignores.
      3. Final Answer:

        <?php /* Plugin Name: My Plugin */ ?> -> Option B
      4. Quick Check:

        Plugin header = PHP comment block [OK]
      Hint: Plugin header must be inside PHP comment block [OK]
      Common Mistakes:
      • Using single-line comments for header
      • Using HTML comments instead of PHP comments
      • Not starting with php
      3. Given this plugin activation code snippet, what will happen when the plugin is activated?
      register_activation_hook(__FILE__, function() {
          update_option('my_plugin_activated', true);
      });
      medium
      A. The option 'my_plugin_activated' will be set to true in the database
      B. Nothing happens because the hook is incorrect
      C. The plugin will deactivate immediately
      D. An error will occur because update_option is not allowed

      Solution

      1. Step 1: Understand register_activation_hook usage

        This function runs the given callback once when the plugin is activated.
      2. Step 2: Analyze the callback function

        The callback calls update_option to set 'my_plugin_activated' to true in the WordPress options table.
      3. Final Answer:

        The option 'my_plugin_activated' will be set to true in the database -> Option A
      4. Quick Check:

        Activation hook runs callback once [OK]
      Hint: Activation hook runs code once on plugin activation [OK]
      Common Mistakes:
      • Thinking activation hook runs on every page load
      • Confusing activation with deactivation hooks
      • Assuming update_option causes errors
      4. Identify the error in this plugin activation code:
      register_activation_hook(__FILE__, 'activate_plugin');
      
      function activate_plugin() {
          add_option('plugin_activated', true);
      }
      medium
      A. Using add_option instead of update_option causes failure if option exists
      B. register_activation_hook must use an anonymous function, not named
      C. The function activate_plugin is missing a return statement
      D. The __FILE__ constant is not allowed in register_activation_hook

      Solution

      1. Step 1: Understand add_option vs update_option

        add_option adds a new option only if it does not exist. If the option exists, it fails silently. update_option adds or updates the option.
      2. Step 2: Check the activation code behavior

        If the plugin is activated multiple times or the option already exists, add_option will not update the value, possibly causing unexpected behavior.
      3. Final Answer:

        Using add_option instead of update_option causes failure if option exists -> Option A
      4. Quick Check:

        Use update_option to ensure option is set [OK]
      Hint: Use update_option in activation to avoid silent failures [OK]
      Common Mistakes:
      • Confusing add_option and update_option
      • Thinking named functions can't be used
      • Misunderstanding __FILE__ usage
      5. You want your plugin to create a custom database table only once when activated. Which is the best way to do this in your plugin activation hook?
      hard
      A. Create the table inside the plugin's main file without any condition
      B. Create the table every time the plugin runs, outside any hook
      C. Use register_activation_hook with a function that checks if the table exists, then creates it if missing
      D. Use the plugin header to define the table creation SQL

      Solution

      1. Step 1: Understand when to create database tables

        Database tables should be created once on plugin activation to avoid errors and performance issues.
      2. Step 2: Use activation hook with existence check

        The activation hook runs once. Checking if the table exists before creating prevents errors if the plugin is reactivated.
      3. Step 3: Avoid creating tables on every page load or in headers

        Creating tables outside activation or without checks can cause repeated attempts and errors.
      4. Final Answer:

        Use register_activation_hook with a function that checks if the table exists, then creates it if missing -> Option C
      5. Quick Check:

        Activation hook + check = safe table creation [OK]
      Hint: Create tables only once inside activation hook with checks [OK]
      Common Mistakes:
      • Creating tables on every page load
      • Putting SQL in plugin header
      • Not checking if table exists before creating
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard