[wp-hackers] wp-config.php defining value of ABSPATH

Andrew Nacin wp at andrewnacin.com
Sun Feb 9 16:07:24 UTC 2014


wp-load.php was new in WordPress 2.6 when we made it so you could put
WordPress in its own directory but leave wp-config.php outside of it (for
SVN externals & git submodules reasons). The include from wp-config.php is
there for backwards compatibility reasons, and yes obviously doesn't work
in this setup.

https://core.trac.wordpress.org/ticket/6933
On Feb 9, 2014 11:00 AM, "Utkarsh Dixit" <utkarsh.dixit11 at gmail.com> wrote:

> What I meant was let my wordpress be installed in a location like
>
> http://example.com/web/wp/
>
> but my wp-config.php file (not any other) is in
>
> http://example.com/web/
>
> folder, then if I open
>
> http://example.com/web/wp-config.php
>
> it will give a fatal error on the line :
>
> require_once(ABSPATH . 'wp-settings.php');
>
>
> because of the condition
>
> if ( !defined('ABSPATH') )
> define('ABSPATH', dirname(__FILE__) . '/');
>
>
> Thanks for pointing out that it is defined in wp-load.php  probably mixed
> up the names (being still new to wordpress).
>
>
>
> On Sun, Feb 9, 2014 at 9:16 PM, Nikola Nikolov <nikolov.tmw at gmail.com
> >wrote:
>
> > It's actually defined in wp-load.php and the correct way of including
> just
> > WordPress(without parsing the request and displaying the correct
> template)
> > is actually by including wp-load.php and not wp-config.php.
> >
> > Basically wp-load.php looks in two locations for wp-config.php:
> >
> > ABSPATH . 'wp-config.php'
> >
> > and
> >
> > dirname( ABSPATH ) . '/wp-config.php'
> >
> > In the second case, wp-load.php also makes sure that in the directory
> where
> > the wp-config.php resides there is no wp-settings.php, because if there
> is,
> > that means that this wp-config file is actually part of a different
> > install.
> >
> >
> > On Sun, Feb 9, 2014 at 3:58 PM, Utkarsh Dixit <utkarsh.dixit11 at gmail.com
> > >wrote:
> >
> > > Hi,
> > >
> > > I'm just a beginner to wordpress so it might sound a little naive, in
> > > wp-config.php file we have following lines of code just before
> including
> > > 'wp-settings.php'
> > >
> > > if ( !defined('ABSPATH') )
> > > define('ABSPATH', dirname(__FILE__) . '/');
> > >
> > >
> > > Seems useless to me as we already define ABSPATH in wp-blog-header.php
> > and
> > > suppose if we directly open our wp-config.php file then also if it is a
> > > level above the wordpress root directory the ABSPATH is set to the
> > > directory a level above the wordpress root directory which gives a
> fatal
> > > error when we include the wp-settings.php file in the next step.Can't
> we
> > do
> > > it like this?
> > >
> > > if ( !defined('ABSPATH') )
> > > define('ABSPATH', dirname(__FILE__) . '/');
> > >
> > > if(file_exists(ABSPATH . 'wp-settings.php'))
> > >          require_once(ABSPATH . 'wp-settings.php');
> > >
> > >
> > > It helps in removing the Fatal error which might occur.
> > > _______________________________________________
> > > wp-hackers mailing list
> > > wp-hackers at lists.automattic.com
> > > http://lists.automattic.com/mailman/listinfo/wp-hackers
> > >
> > _______________________________________________
> > wp-hackers mailing list
> > wp-hackers at lists.automattic.com
> > http://lists.automattic.com/mailman/listinfo/wp-hackers
> >
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
>


More information about the wp-hackers mailing list