Source for file index.php
Documentation is available at index.php
* This is the main public interface file.
* IF YOU ARE READING THIS IN YOUR WEB BROWSER, IT MEANS THAT PHP IS NOT PROPERLY INSTALLED
* ON YOUR WEB SERVER. IF YOU DON'T KNOW WHAT THIS MEANS, CONTACT YOUR SERVER ADMINISTRATOR
* OR YOUR HOSTING COMPANY.
* This file is NOT mandatory. You can delete it if you want.
* You can also replace the contents of this file with contents similar to the contents
* of a_stub.php, a_noskin.php, multiblogs.php, etc.
* b2evolution - {@link http://b2evolution.net/}
* Released under GNU GPL License - {@link http://b2evolution.net/about/license.html}
* @copyright (c)2003-2010 by Francois PLANQUE - {@link http://fplanque.net/}
* {@internal Note: we need at least one file in the main package}}
* First thing: Do the minimal initializations required for b2evo:
require_once dirname(__FILE__
).
'/conf/_config.php';
require_once $inc_path.
'_main.inc.php';
$Timer->resume('index.php');
if( ! isset
($collections_Module) )
{ // The evocore framework is not used as a blog app here / we don't know how to display a public interface...
// Check if a specific blog has been requested in the URL:
param( 'blog', 'integer', '', true );
{ // No blog requested by URL param, let's try to match something in the URL
$Debuglog->add( 'No blog param received, checking extra path...', 'detectblog' );
if( preg_match( '#^(.+?)index.php/([^/]+)#', $ReqHost.
$ReqPath, $matches ) )
{ // We have an URL blog name:
$Debuglog->add( 'Found a potential URL blog name: '.
$matches[2], 'detectblog' );
if( (($Blog =
& $BlogCache->get_by_urlname( $matches[2], false )) !==
false) )
{ // We found a matching blog:
{ // No blog identified by URL name, let's try to match the absolute URL
if( preg_match( '#^(.+?)index.php#', $ReqHost.
$ReqPath, $matches ) )
{ // Remove what's not part of the absolute URL
$ReqAbsUrl =
$matches[1];
$ReqAbsUrl =
$ReqHost.
$ReqPath;
$Debuglog->add( 'Looking up absolute url : '.
$ReqAbsUrl, 'detectblog' );
if( (($Blog =
& $BlogCache->get_by_url( $ReqAbsUrl, false )) !==
false) )
{ // We found a matching blog:
$Debuglog->add( 'Found matching blog: '.
$blog, 'detectblog' );
{ // Still no blog requested, use default
$blog =
$Settings->get('default_blog_ID');
if( (($Blog =
& $BlogCache->get_by_ID( $blog, false, false )) !==
false) )
{ // We found a matching blog:
$Debuglog->add( 'Using default blog '.
$blog, 'detectblog' );
{ // No specific blog to be displayed:
// we are going to display the default page:
require
dirname(__FILE__
).
'/default.php';
// A blog has been requested... Let's set a few default params:
# You could *force* a specific skin here with this setting:
# This setting retricts posts to those published, thus hiding drafts.
# You should not have to change this.
$show_statuses =
array();
# Here you can set a limit before which posts will be ignored
# You can use a unix timestamp value or 'now' which will hide all posts in the past
# Here you can set a limit after which posts will be ignored
# You can use a unix timestamp value or 'now' which will hide all posts in the future
# Additionnaly, you can set other values (see URL params in the manual)...
# $order = 'ASC'; // This for example would display the blog in chronological order...
$Timer->pause('index.php');
// That's it, now let b2evolution do the rest! :)
require
$inc_path.
'_blog_main.inc.php';