Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
Miguel92

Actualizar Smarty 2.1 a 3.1.31

Recommended Posts

Actualizar Smarty 2.1 a 3.1.31

 

Descargar la última versión de Smarty 3.1.31 la puedes encontrar aq uí:

smarty3.1.31.zip

 

Lo inician www.tuweb.com/updater/index.php

 

Damos clic en "Empezar Actualización" y eligen una de las 2 opciones la Smarty normal y la opción Smarty BC.

 

Ahora esto es opcional:

Es cambiar el nombre a la carpeta que se encuentra en cache llamada templates_c y llamarla como deseemos en mi caso será themes_TUTHEME_cache, bien para realizarlo vamos a 

Raíz/smarty/Smarty.class.php y buscamos la línea 358

    public $compile_dir = TS_ROOT.DIRECTORY_SEPARATOR.'cache'.DIRECTORY_SEPARATOR.'templates_c'.DIRECTORY_SEPARATOR;

y la reemplazamos por

    public $compile_dir = TS_ROOT . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'theme_' . TS_TEMA . '_cache' . DIRECTORY_SEPARATOR;

TS_TEMA = Es el nombre de tu tema (ej: si se llama taringa, entonces será theme_taringa_cache)

 

Ahora este paso también opcional:

Con esto sabremos si estamos con la versión correcta de PHP, para ello buscamos Raíz/header.php y debajo de

/**
 * Archivo de Inicialización del Sistema
 *
 * Carga las clases base y ejecuta la solicitud.
 *
 * @name    header.php
 * @author  PHPost Team
 */


 Agregamos, esto quiere decir que debes tener la versión 7.0.0 o mayor, si es menor se mostrará el mensaje que esta en el h1 y h2

/* Requirimiento de Php 7.0 */
if (version_compare(PHP_VERSION, '7.0.0', '<')) exit('<link href="https://fonts.googleapis.com/css?family=Exo" rel="stylesheet"><div style="font-family:Exo;text-align:center;border: 1px solid transparent; padding:10% 0;">
    <h1>Tu versión es: <br><b style="font-size:3em">'.PHP_VERSION.'</b></h1> <br>
    <h2>Necesitas la versión PHP 7.0+ o superior</h2><p>Perdón las molestias @Miguel92</p></div>');

se visualiza de esta manera...

B5B.png

Aclaró que he modificado esta parte para que se pueda ver como es... le había puesto 7.2.0

version_compare(PHP_VERSION, '7.0.0', '<'))

 

Edited by Miguel92
Cambios, topic desaparecido ??
  • Downvote 1

Share this post


Link to post
Share on other sites

  • Similar Content

    • By Miguel92
      Actualizar de PHP 5.6 a PHP 7.0+
      Hacer al Script compatible con PHP 7.0+ (Por: @MagicInventor)
       
      Deben buscar estos archivos [ Raíz = localhost o servidor]
       
      Raíz/inc/ext/functions.php [Línea 28] y reemplazan esta línea 
          function db_exec($info = '', $type, $data) por esta
          function db_exec($info = '', $type = NULL, $data = NULL)  
      Si te aparece esto:
      Fatal error: Uncaught ArgumentCountError: Too few arguments to.... (dependerá de donde estes ubicado, puede ser muro, perfil, etc.), para encontrar dicho error solo vean la última parte del "Fatal error" que le dirá el Archivo y la línea
       
      debes hacer lo siguiente
      Raíz/inc/class/c.actividad.php [Línea 95] y reemplazan esta línea 
          public function setActividad($ac_type, $obj_uno, $obj_dos = 0){ por esta
          public function setActividad($ac_type = NULL, $obj_uno = NULL, $obj_dos = 0){ En el mismo archivo [Línea 133] y reemplazan esta línea 
          public function getActividad($user_id, $ac_type = 0, $start = 0, $v_type){ por
          public function getActividad($user_id = NULL, $ac_type = 0, $start = 0, $v_type = NULL){ Luego buscamos en el mismo archivos y agregamos esto = NULL a lado de $data 
      Líneas 211, 253, 291, y a lado de $time igual 382
       
      Raíz/inc/class/c.monitor.php [Línea 101] y reemplazan esta línea
          function setAviso($user_id, $subject = '(sin asunto)', $body, $type = 0){ por
          function setAviso($user_id = NULL, $subject = '(sin asunto)', $body = NULL, $type = 0){ En el mismo archivo [Línea 222] y reemplazan esta línea 
          function setFollowNotificacion($notType, $f_type, $user_id, $obj_uno, $obj_dos = 0, $excluir){ por esta
           function setFollowNotificacion($notType = NULL, $f_type = NULL, $user_id = NULL, $obj_uno = NULL, $obj_dos = 0, $excluir = NULL){  
      Raíz/inc/class/c.muro.php [Línea 21] y reemplazan esta línea
          public function getPrivacity($user_id, $username, $follow, $yfollow){ por esta
          public function getPrivacity($user_id = NULL, $username = NULL, $follow = NULL, $yfollow = NULL){  
      Ahora en el caso que les diera un error en algún archivo (EJEMPLO: c.portal.php línea 300), buscan esa línea en el archivo y agregan = NULL como sea hecho anteriormente, bien eso creo que sería todo...
       
    • By Miguel92
      La actualización es muy rápida y no requiere hacer ninguna modificación
      al menos que el usuario la requiera, pero se puede hacer otro tutorial
      agregando un plugin en smarty y/o uso de ello
       
      Incorporar un nobbcode: Quita las etiquetas del bbcode y usarlo como descripción del post en el home (Usando el contenido del body del post)
      --------------------------------------
      O usar el strip_tags
      Referencias:
      → php.net (http://php.net/manual/es/function.strip-tags.php)
      → smarty.net (https://www.smarty.net/docsv2/es/language.modifier.strip.tags.tpl)
       
      Visiten la página en github: Web(del tutorial)
       
      Ver tutorial → Ver ahora ←
       
      Cambio adicional:
      Buscar en header.php
      define('TS_EXTRA', TS_ROOT.'/inc/ext/'); y debajo pegamos
      define('TS_SMARTY', TS_ROOT.'/inc/smarty/'); más abajo buscamos
      include TS_CLASS.'c.smarty.php'; y reemplazamos por
      include TS_SMARTY.'SmartyBC.class.php'; luego más abajo buscar
      $smarty = new tsSmarty(); y reemplazarlo por
      $smarty = new SmartyBC();  
       
    • By Miguel92
      Esto solo y únicamente para los que actualizaron
      de PHP 5.6 a PHP 7.x...
       
      NOTA: En la documentación oficial de php.net es funcional hasta:
      (PHP 4, PHP 5, PHP 7) each — Devolver el par clave/valor actual de un array y avanzar el cursor del array  
      En el archivo templates/b_toup/home/b.tags_recientes.tpl hay una función llamada each() y se visulizará un mensaje parecido a este
      Deprecated: The each() function is deprecated. This message will be suppressed on further calls in [ubicación en cache]....  
      Para arreglar eso buscamos en el archivo ya mencionado esto: [línea 31]
      while (list($name, $valor) = each($tags)){ y la reemplazamos por
      foreach($tags as $name => $valor) {  
      06/12/2018
      En el caso que le siga dando error comparenlo con este:
       
    • By Miguel92
      Bueno para hacer un poco más rápida nuestra web, una de esas formas sería comprimir el html de la web, y en vez de sacar espacios archivos por archivos usaremos una línea de código que hará el trabajo por nosotros, lo bueno de esto es que sólo comprimira el html y no el script que este agregado, ya que puede que les de error.
       
      En este caso les mostraré para todos los que tienen Smarty actualizado (a la versión 3.1.32).
      1 - Abrimos el header.php y debajo de 
          // Mensajes     $smarty->assign('tsMPs',$tsMP->mensajes);
      agregamos esto
          // Comprime todo el HTML     $smarty->loadFilter('output', 'trimwhitespace');     
      este es opcional, no es necesario. Solo por si quieren saber si tienen error de php (¿Creo?) es lo que tengo en MozzFire
          // Modo desarrollador, digamoslo así jajaja     $smarty->debugging = true;  
      En este caso les mostraré para todos los que tienen Smarty por defecto (la versión 2.6.30).
      1 - Abrimos el header.php y debajo de 
          // Mensajes     $smarty->assign('tsMPs',$tsMP->mensajes);
      agregaremos esto
      // Sistema para comprimir HTML por Miguel92 function html_comprimir($buffer){ return preg_replace(array('//Uis',"/[[:blank:]]+/"),array('',' '),str_replace(array("\n","\r","\t"),'',$buffer)); } ob_start("html_comprimir"); 2 - Luego abriremos footer.php y al final de todo el código agregamos esto
          ob_end_flush();  
      + A FAVOR:
          Smarty v2 y Smarty v3 = Es que comprimira el código para que la web sea un poco más rápida, lo cual mejorará! 
       
      NOTA: Topic actualizado, ya comprimira todo sin problemas... Aun no me ha dado error! Gracias a @Alucard que me hizo recordar la otra función.
      ======================= | | | + | | | =======================
      07/10/2018:
      Bueno en este caso se encontró un problema con esto
              // Eliminar comentarios //         return preg_replace('/^\h*(?|(.*"[^"]*\/\/[^"]*".*)|(.*)\/\/.*\h*)$/m', '$1', $buffer); De funcionar funciona perfectamente, pero hay funciones que usa {literal}..{/literal} y esa función borra el {literal} provocando así error!
      Una de las formas de poder implementarlo es buscar todos los
              // {literal}         // {/literal} y cambiarlos por
              /* {literal} */         /* {/literal} */  
      Aunque yo recomiendo actualizar el Smarty ya que es mucho más simple.
       
      ======================= | | | + | | | =======================
       
      Enlace de la web que obtuve la información:
      https://stackoverflow.com/questions/18673684/minify-html-outputs-in-smarty
       
      Enlace de donde obtuve "Eliminar comentarios //"
      https://es.stackoverflow.com/questions/187086/expresion-regular-para-eliminar-comentarios-js-html-y-css
       
      Ver video tutorial
       
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Patrocinador



  • ×