Reputation: 53
I am trying to include a file in an another file, but nothing. No error. First I included my main file.
include('inc/onefolder/mymainfile.php');
And then I try to include secondary files in this file (mymainfile.php
).
include('inc/onefolder/anotherfolder/secondaryfile.php');
Upvotes: 5
Views: 12056
Reputation: 287
Try to include absolute path of your file. Use it:
$file = ABSPATH."wp-content/plugins/your-plugin/your-file.php";
in your case:
//main thing is to use ABSPATH
$file = ABSPATH."inc/onefolder/anotherfolder/secondaryfile.php";
require $file; // use include if you want.
$file = ABSPATH."wp-content/plugins/your-plugin/inc/onefolder/anotherfolder/secondaryfile.php";
Check it out, please note, you should give the exact path as written on above line. Make it clear.
Upvotes: 3
Reputation: 376
When you use PHP include
or require
in a WordPress plugin is a good idea to use WordPress specific functions to get the absolute path of the file. You can use plugin_dir_path:
include( plugin_dir_path( __FILE__ ) . 'inc/onefolder/mymainfile.php');
Plugins directory is not always at wp-content/plugins as we can read in WordPress Codex:
It's important to remember that WordPress allows users to place their wp-content directory anywhere they want, so you must never assume that plugins will be in wp-content/plugins, or that uploads will be in wp-content/uploads, or that themes will be in wp-content/themes.
So, using plugin_dir_path() assures that include
will always point to the right path.
Upvotes: 7
Reputation: 21
Upvotes: 0