Trucos Joomla & virtuemart
Aveces necesitamos traernos datos de joomla o virtuemart en paginas no-joomla por decirlo de alguna manera y si estamos a ciegas es muy dificil
este pequeño fichero lo utilizo siempre cuando necesito hacer un guión no-joomla básicamente lo que hace es decirle al framework de joomla que somos
el bootstrap de joomla y de tal manera que nos permite cargar su framework y con el haremos una serie de cosillas que están explicadas a modo de comentario en el código espero les sea de utilidad, para entender este pequeño guión debemos tener las nociones basicas de programacion orientada a objetos basicamente clases y obviamente objetos jajaja XD bueno sin mas ahi les va
Untitled
<?php /* File: cheat.php * Company: Grisunder * Coder: GrisUNO * Date: 07/08/2012 * Desc: emula ser una pagina joomla */ /* iniciando el framework de joomla 1.5 */ define( '_JEXEC', 1 ); define('JPATH_BASE', dirname(__FILE__) ); define( 'DS', DIRECTORY_SEPARATOR ); require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/includes/defines.php'; require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/includes/framework.php'; require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/administrator/components/com_virtuemart/classes/ps_database.php'; /* ps_database.php es la clase que hace las consultas sql de virtuemart */ require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/administrator/components/com_virtuemart/classes/ps_user.php'; /* la clase ps_user.php se usa para traerme el objeto user de virtuemart*/ JDEBUG ? $_PROFILER->mark( 'afterLoad' ) : null; $mainframe =& JFactory::getApplication('site'); $mainframe->initialise(); // para las sessiones esto es muy importante!! /* terminando la carga del framework de joomla 1.5 */ $oDb =& JFactory::getDBO(); // se trae la conexión a la db de joomla $oSes =& JFactory::getSession(); // me traigo la instancia de la session de joomla $oCurrentUser = JFactory::getUser(); // se trae el usuario en uso de joomla $oUsr =& ps_user::getUserInfo($oCurrentUser->id); /* se trae todo el objeto usuario y algunos debug de la calse ps_user de virtuemart */ $sTipo_usuario = $oUsr->record[0]->perms; // si necesito el tipo de usuario $oSes->set('datos',array()); // setea un arreglo vacío en la sesion de joomla extract($_POST); // extrae todo el arreglo post en variables con los nombres de sus indices y su contenido. /* nomenclatura para variables: el primer carácter utilizo la primera letra del tipo de la variable. a = array n = numeric s = string f = float o = object m = mixed */ ?>
Comentarios
Publicar un comentario