7

About 60% of plugins that I install don't show up in my plugins section.

When I install them it says they're installed, and when I click "activate plugin" it says theres no valid header for the plugin. Navigating to the main plugin section in the dashboard the plugin doesn't show up at all, so I can't activate it from the main plugin page either.

What's wrong here. I'm not using the multi-site wordpress, just a standard wordpress installation with buddypress on top.

Thanks

Tom

3 Answers 3

6

Download the plugin as a zip, extract and manually upload the folder that immediately parents all the .php files (i.e not a folder that has another folder as its child) into you plugin folder.

Sometimes dev's can zip things within an extra folder, which confuses wordpress.

1
  • 1
    I have no idea why that worked. Thats what I thought, but all the files seemed to match up and stuff... but its worked! :) Thank you. Commented Apr 20, 2011 at 13:21
7

Per the WordPress Codex on plugin development, on File Headers:

The top of your Plugin's main PHP file must contain a standard Plugin information header. This header lets WordPress recognize that your Plugin exists, add it to the Plugin management screen so it can be activated, load it, and run its functions; without the header, your Plugin will never be activated and will never run. Here is the header format:

<?php
/*
Plugin Name: Name Of The Plugin
Plugin URI: http://URI_Of_Page_Describing_Plugin_and_Updates
Description: A brief description of the Plugin.
Version: The Plugin's Version Number, e.g.: 1.0
Author: Name Of The Plugin Author
Author URI: http://URI_Of_The_Plugin_Author
License: A "Slug" license name e.g. GPL2
*/
?>

The minimum information WordPress needs to recognize your Plugin is the Plugin Name line.

If I had to guess, I'd say the problem is that the Plugin Name header is missing from the top of the plugin's main file. Not knowing what plugins you're using, this is the most complete answer I can give right now.

EDIT

I should add that in order for a file to be checked for headers, it must be a .php file either in the plugins directory or in a subdirectory of the plugins directory. So, for example, wp-content/plugins/plugin.php and wp-content/plugins/my-plugin/plugin.php would be valid, but wp-content/plugins/my-plugin/lib/file.php would not.

2
  • I think you meant my-plugin.php for the my-plugin folder? Commented May 21, 2015 at 5:26
  • my plugins have the header set but aren't recognized anyway... What could be the problem instead? Commented Mar 10, 2016 at 10:50
2

On my Debian installation, the plugins are in /usr/share/wordpress/wp-content/plugins and I needed a symlink before the plugin could be found/activated:

/var/lib/wordpress/wp-content/plugins$ sudo ln -s /usr/share/wordpress/wp-content/plugins/treepress

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.