Skip to content

Instantly share code, notes, and snippets.

@mipmip
Created February 14, 2012 21:00
Show Gist options
  • Save mipmip/1830401 to your computer and use it in GitHub Desktop.
Save mipmip/1830401 to your computer and use it in GitHub Desktop.
TYPO3: standalone frontend script
<?php
// Add defines and includes below the have a working standalone
// frontend script which has access to the TYPO3 API.
define('TYPO3_OS', stristr(PHP_OS,'win')&&!stristr(PHP_OS,'darwin')?'WIN':'');
define('TYPO3_MODE','FE');
define('PATH_thisScript',str_replace('//','/', str_replace('\\','/', (
php_sapi_name()=='cgi'|| php_sapi_name()=='isapi'
|| php_sapi_name()=='cgi-fcgi')
&& ($_SERVER['ORIG_PATH_TRANSLATED']?
$_SERVER['ORIG_PATH_TRANSLATED']:
$_SERVER['PATH_TRANSLATED'])?
($_SERVER['ORIG_PATH_TRANSLATED']?
$_SERVER['ORIG_PATH_TRANSLATED']:
$_SERVER['PATH_TRANSLATED']):
$_SERVER['SCRIPT_FILENAME'])));
####!!!!
### REPLACE p3ga_typeimage WITH THE KEY OF YOUR EXTENSION
####!!!!
define('PATH_site',
preg_replace("/(typo3conf|typo3)\/ext\/p3ga_typeimage/i", '', dirname(PATH_thisScript)));
define('PATH_t3lib', PATH_site.'t3lib/');
define('PATH_tslib', PATH_site.'typo3/sysext/cms/tslib/');
define('PATH_typo3conf', PATH_site.'typo3conf/');
require_once(PATH_t3lib.'class.t3lib_div.php');
require_once(PATH_t3lib.'class.t3lib_extmgm.php');
require_once(PATH_t3lib.'class.t3lib_db.php');
require_once(PATH_t3lib.'config_default.php');
require_once(PATH_tslib."class.tslib_fe.php");
require_once(PATH_t3lib."class.t3lib_cs.php");
require_once(PATH_t3lib."class.t3lib_userauth.php");
require_once(PATH_tslib."class.tslib_feuserauth.php");
require_once(PATH_t3lib."class.t3lib_befunc.php");
$TYPO3_DB = t3lib_div::makeInstance('t3lib_DB');
$TYPO3_DB->sql_pconnect(TYPO3_db_host, TYPO3_db_username, TYPO3_db_password);
$tempClassName=t3lib_div::makeInstanceClassName("tslib_fe");
$TSFE = new $tempClassName($TYPO3_CONF_VARS,
t3lib_div::GPvar("id"),
t3lib_div::GPvar("type"),
t3lib_div::GPvar("no_cache"),
t3lib_div::GPvar("cHash"),
t3lib_div::GPvar("jumpurl"),
t3lib_div::GPvar("MP"),
t3lib_div::GPvar("RDCT"));
$TSFE->connectToMySQL();
$TSFE->initFEuser();
$TSFE->initUserGroups();
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment