logo

WikiJuanan: CmsMadeSimple ...

Inicio | Indice De Paginas | Ultimas Modificaciones | Ultimos Commentarios | Usuarios | Registrarse | Conectar:  Contraseña:  
Esto es una version antigua de CmsMadeSimple de 2008-02-21 17:28:23..

FrameworksPHPProgramaciónDesarrollo WebPHPCurso Cms Made SimpleCms Made Simple La Película?Cms Made Simple El Libro?


Tablas Cms Made Simple
API de Cms Made SimpleApidoc


Tecnologías relacionadas: Smarty, Ado DB


Errores frecuentes

Borrar la caché del servidor

Después de hacer cambios de importancia en el cms, o de haber corregido algún error de los que comentamos más abajo es muy recomendable borrar la caché del servidor para que se ejecuten los cambios que has realizado. Para borrar la caché del servidor ve al menú “Sitio” -> «Configuración general” y luego «Borrar caché». Mano de santo.

Accediendo a la gestión de módulos

Desarrollo de módulos

Los módulos pueden generar dos tipos distintos de salida: plugin y tipo de contenido
En el modo plugin, la salida del módulo se realiza desde una página existente en la que se inserta una llamada al módulo con una serie de parametros y este imprimirá algo ahí. El otro modo, añade una nueva opción al menú “Contenido” de la parte administrativa, piensa por ejemplo en las “News”, desde esa opción podremos añadir contenidos de ese tipo, plantillas para visualizarlos en distintos formatos, etc. Luego esas plantillas se renderizan junto con el contenido y se pueden ver desde la parte del cliente de forma parecida a un plugin.

Problemas con los permisos del grupo admin

mira que el grupo de admis tenga todos los permisos dados
a veces el grupo admin tiene menos permisos que el usuario que monta el tinglado
y hay que entrar en los permisos


Módulos de interés

Custom Content?: permite especificar distintos contenidos por usuarios o grupos
Front End Users?: permite autenticación de usuarios en el web
CMSMailer: permite enviar correo desde cualquier otro módulo o tag(?). Sería algo así:

$cmsmailer = $this->GetModuleInstance('CMSMailer');
  $cmsmailer->AddAddress('fulano@us.es','fulano');
  $cmsmailer->SetBody('Este es un mensaje de prueba'); 
  $cmsmailer->IsHTML(true); 
  $cmsmailer->SetSubject('Mensaje de prueba'); 
  $cmsmailer->Send();

Funciones de interés

$this->Audit
Sirve para grabar una línea en el registro de administración del sistema
$this->Audit( 0, nombre_módulo, evento_registrado);
Ejemplo:
$this->Audit( 0, $this->Lang('friendlyname'), $this->Lang('installed',$this->Get Version?()));


Pasando variables entre páginas

""{* -- display value of page from URL (GET) http://www.domain.com/index.php?page=foo *}""
{$smarty.get.page}
{* -- display the variable "page" from a form (POST) * -- }
{$smarty.post.page}
{* -- display the value of the cookie "username" * -- }
{$smarty.cookies.username}
{* -- display the server variable "SERVER_NAME" * -- }
{$smarty.server.SERVER_NAME}
{* -- display the system environment variable "PATH" * -- }
{$smarty.env.PATH}
{* -- display the php session variable "id" * -- }
{$smarty.session.id}
{* -- display the variable "username" from merged get/post/cookies/server/env * -- }
{$smarty.request.username}


Como se comunica php con una plantilla smarty
Desde la página php:

<?php 
$smarty 
= new Smarty(); 
$smarty->assign('nombre''Pepe'); 
$smarty->assign('apellidos''Rey'); 
$smarty->assign('proxima_cita''27/02/2008 12:00'); 
$smarty->display('index.tpl'); 
?>


Y el contenido de la plantilla (index.tpl) sería:



Obtener las variables de la plantilla actual

get_template_vars


When working with smarty templates in your modules, it's useful to know what variables are available and their values. Fortunately, this is now possible.


// get a list of all of the smarty assigned variables
// user defined tag named “get_template_vars”
global $gCms;
$tpl_vars = $gCms->smarty->get_template_vars();
print_r( $tpl_vars );

Obtener datos de una base de datos distinta a la del CMS

<?php
global $gCms;
// Hacemos una referencia al objeto ADOdb
$db =& $gCms->db;
// Lo conectamos a la base de datos externa
$db->Connect('host','usuario','password','base_datos_distinta');
$query "SELECT * FROM tabla";
$resultado $db->getAll($query);
$smarty->assign('datos',$resultado);
// Al terminar volvemos a conectar a la base de datos de nuestro cms 
$db->PConnect('localhost','usuario','password','base_de_datos_cms');
?>


Problemas de propietario con cPanel

Entendemos que usted creo el directorio «./www/modules/HitCounter» a través de su web (posiblemente a través de un sistema de instalación de plugins de su CMS). Esto creo los directorios y le puso como propietario a “nobody” (el usuario con el que se ejecuta el servidor web).


Por eso al intentar editarlo usted directamente (bien mediante el Cpanel, bien mediante el FTP) le salta el error de permisos.


La solución es que desinstale dicho módulo desde su CMS y lo instale manualmente (subiendo ficheros por FTP) de esta forma podrá editarlos sin problema.


Otra opción es que nuestros técnicos cambien manualmente los permisos de dicho directorio (y sus ficheros) para que todo el mundo pueda escribirlos. Esta última opción tiene un coste de 1 ticket de soporte.

No hay archivos en esta página. [Enseñar archivos/formulario]
No hay comentarios en esta pagina. [Enseñar comentarios/formulario]