5

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');
2
  • Have you tried include('anotherfolder/secondaryfile.php'); ? Commented Aug 24, 2015 at 8:42
  • Yes i try it too but nothing. Commented Aug 24, 2015 at 9:03

3 Answers 3

7

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.

Sign up to request clarification or add additional context in comments.

Comments

3

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.

3 Comments

When i use require() i got a blank page. Thank you for your time @Haider
you can also use include instead of require. It depends upon your requirements. But the way to include file is via absolute path.
You welcome brother and thanks to Stackoverflow Community.
0
  • I think your path in secondary file incorrect.
  • Try this include('anotherfolder/secondaryfile.php');

1 Comment

I try this but is the same as before but thank you for your time @Jaswant Singh

Your Answer

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

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.