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

Theme Spectre v.1.0 RC-0.0.1

Recommended Posts

Bueno he terminado con el theme Spectre, aún que le hace falta pulir un poco...pero está listo para usar.

Lo pueden descargar directamente desde el repositorio en github, ya que si tengo que hacer cambios los subo directamente allí y es fácil buscar los cambios realizados.

 

DESCARGAR SPECTRE V.1.0 RC-0.0.1

hXydbOR.png

Detalles:

  1. Jquery 3.4.1
  2. Smarty 3.1.32
  3. PHP 7.+
  4. PHPMailer 6.+

 

Componentes usados:

  1. Framework css - Spectre
  2. Spectre-Icons (36 iconos)
  3. LineIcons (460 iconos)

 

Tienen 2 maneras:

1 - Instalar como si fuera un script desde cero, lo descargan, lo instalan y eso ya sería todo, no hay más...no hace falta que mires este topic!

2 - Es copiar el theme a su carpeta respectiva e instalarlo como Spectrev1.0 y poner la carpeta "Modulos" a la raíz de su sitio si seguir los siguientes paso:

 

GUIA:

Si instalaste la versión que realice con ambos recaptcha v2 y v3 no realices la consulta pero sigue los pasos y cabe destacar que algunas cosas las he tomado de la versión de Taringa V5:

ALTER TABLE `w_configuracion` ADD `c_recaptcha` int(1) NOT NULL DEFAULT '0'; 
ALTER TABLE `w_configuracion` ADD `pkey3` varchar(55) NOT NULL; 
ALTER TABLE `w_configuracion` ADD `skey3` varchar(55) NOT NULL;

Editar header.php Buscan estas líneas

// Mensajes 
$smarty->assign('tsMPs',$tsMP->mensajes);

y debajo pegan esta

include 'modulos/spectre.php';

Luego buscan config.inc.php y borrar estas líneas

define('RC_PUK',"6LcXvL0SAAAAAPJkBrro96lnXGZ56TBRExEmVM3L"); // public key recaptcha 
define('RC_PIK',"6LcXvL0SAAAAAEg1zizOxJPTjlD0ZtbbzubF2NjE"); // private key recaptcha

 

¿Para qué es el archivo spectre.php?

Es un mini-archivo de configuración, en el que se puede hacer configuraciones globales y así evitar que busquen cada archivo para poder cambiar. EJ: quieren cambiar el header, simplemente buscan este archivo y modifican, sin tener que ir a templates/section/main_header.tpl.

 

ANALIZANDO EL CONTENIDO DE SPECTRE.PHP

Es la versión del theme y no deben tocarlo.

define('VersionTheme', '1.0'); 

 

Este es el icono que se verá en el explorador

define('LogoIco',   $tsCore->settings['url'] . '/modulos/img/favicon.ico'); 

define('LogoPng',   $tsCore->settings['url'] . '/modulos/img/favicon.png');

 

Para cambiar el header 1000 x 363 que sea más o menos con esa dimensión, si es PNG, JPG o JPEG es mejor que la conviertan a .WEBP para que esta sea más rápido al cargar (si no me equivo)

define('Header',   $tsCore->settings['url'] . '/modulos/img/header.webp'); 

 

Convertidores online gratuitos, use ambos y son buenos:

https://convertio.co/es/png-webp/

https://imagen.online-convert.com/es/convertir-a-webp

 

PONER FOTOS EN TOPS

1 - Ir a inc/class/c.tops.php y buscan

    /*
        getStats() : NADA QUE VER CON LA CLASE PERO BUENO PARA AHORRAR ESPACIO...
        : ESTADISTICAS DE LA WEB
    */

Arriba pegan lo siguiente
   

Spoiler
/*
        getTopFotos()
   */
   function getTopFotos($fecha, $desc){
       //
       $data = $this->setTime($fecha);
       $desc = empty($desc) ? '' : 'AND f_description = '.$desc;

       // VOTOS POSITIVOS
       $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT SUM(f.f_votos_pos) AS total, u.user_id, u.user_name, f_url, f_user, f_votos_pos, f_title, foto_id FROM f_fotos AS f LEFT JOIN u_miembros AS u ON f.f_user = u.user_id WHERE f.f_status = 0  AND f.f_date BETWEEN '.$data['start'].' AND '.$data['end'].' '.$desc.' GROUP BY f.f_user ORDER BY total DESC LIMIT 10');
       $array['votos_pos'] = result_array($query);

       // VOTOS NEGATIVOS
       $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT SUM(f.f_votos_neg) AS total, u.user_id, u.user_name, f_url, f_user, f_votos_neg, f_title, foto_id  FROM f_fotos AS f LEFT JOIN u_miembros AS u ON f.f_user = u.user_id WHERE f.f_status = 0  AND f.f_date BETWEEN '.$data['start'].' AND '.$data['end'].' '.$desc.' GROUP BY f.f_user ORDER BY total DESC LIMIT 10');
       $array['votos_neg'] = result_array($query);

       // VISITAS
       $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT SUM(f_visitas) AS total, u.user_id, u.user_name, f_url, f_user, f_visitas, f_title, foto_id  FROM f_fotos AS f LEFT JOIN u_miembros AS u ON f.f_user = u.user_id WHERE f.f_status = 0  AND f.f_date BETWEEN '.$data['start'].' AND '.$data['end'].' '.$desc.' GROUP BY f.f_user ORDER BY total DESC LIMIT 10');
       $array['visitas'] = result_array($query);

       // MEDALLAS
       $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT COUNT(m.medal_for) AS total, u.user_id, u.user_name, f_url, f_user, f_title, foto_id, wm.medal_id FROM w_medallas_assign AS m LEFT JOIN f_fotos AS f ON m.medal_for = f.foto_id LEFT JOIN u_miembros AS u ON f.f_user = u.user_id LEFT JOIN w_medallas AS wm ON wm.medal_id = m.medal_id WHERE wm.m_type = \'3\' AND m.medal_date BETWEEN '.$data['start'].' AND '.$data['end'].' GROUP BY m.medal_for ORDER BY total DESC LIMIT 10');
       $array['medallas'] = result_array($query);

       //
       return $array;

   }

 


2 - Buscar en inc/php/top.php y buscan 

      case 'usuarios':
         $smarty->assign("tsTops",$tsTops->getTopUsers($fecha, $cat));
      break;


Y debajo pegan     

        case 'fotos':
            $smarty->assign("tsTops", $tsTops->getTopFotos($fecha, $desc));
        break; 

3 - Buscan en inc/class/c.posts.php y buscan la última llave } y arriba pegan lo siguiente
    

Spoiler
/* POSTS REVIEWS */
    function PostsReviews(){
      global $tsCore, $tsUser;
      $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT c.cid, c.c_seo, p.post_id, p.post_title, p.post_category, p.post_date, p.post_body, p.post_hits, p.post_status FROM p_categorias AS c LEFT JOIN p_posts AS p ON p.post_category = c.cid WHERE p.post_status = 0 AND p.post_id ORDER BY p.post_hits DESC LIMIT 5');
      $data = result_array($query);
      //
    return $data;
    }
    /* POSTS POPULAR */
    function PostsPopular(){
      global $tsCore, $tsUser;
      $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT c.cid, c.c_seo, p.post_id, p.post_user, p.post_title, p.post_category, p.post_date, p.post_body, p.post_favoritos, p.post_status FROM p_categorias AS c LEFT JOIN p_posts AS p ON p.post_category = c.cid WHERE p.post_status = 0 AND p.post_id ORDER BY p.post_favoritos DESC LIMIT 5');
      $data = result_array($query);
      //
    return $data;
    }
    /* POSTS RECIENTES */
    function PostsRecientes(){
      global $tsCore, $tsUser;
      $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT p.post_id, p.post_user, p.post_category, p.post_title, p.post_date, u.user_name, c.cid, c.c_seo, c.c_nombre FROM p_posts AS p LEFT JOIN u_miembros AS u ON u.user_id = p.post_user LEFT JOIN p_categorias AS c ON c.cid = p.post_category = c.cid WHERE p.post_status = 0 AND p.post_id ORDER BY p.post_id DESC LIMIT 5');
      $data = result_array($query);
      //
    return $data;
    }
  function getPostsAzar(){
    global $tsCore, $tsUser;
    $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT p.post_id, p.post_user, p.post_category, p.post_title, p.post_date, p.post_hits, p.post_puntos, p.post_favoritos, u.user_name, c.c_seo, c.c_nombre, c.c_img FROM p_posts AS p LEFT JOIN u_miembros AS u ON u.user_id = p.post_user LEFT JOIN p_categorias AS c ON c.cid = p.post_category WHERE p.post_status = \'0\' '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == 1 ? '' : 'AND u.user_activo = \'1\' && u.user_baneado = \'0\'').' ORDER BY RAND() ASC LIMIT 5');
    $data = result_array($query);
    return $data;
   }
   /* Top Categorias*/
    function topcat(){
    global $tsUser, $tsCore;
    $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT c.cid, c.c_nombre,c.c_seo, c.c_img, COUNT(p.post_id) AS total, p.post_category FROM p_categorias AS c LEFT JOIN p_posts AS p ON p.post_category = c.cid WHERE post_status = 0 GROUP BY c.c_nombre ORDER BY c.c_nombre ASC');
    $data = result_array($query);
    return $data;
    }

 


5 - En inc/php/posts.php buscan

    } else {
        // PAGINA
        $tsPage = "home";


y la reemplazan por

    } else if ($_GET['cate'] == 'categorias') {
        $tsPage = "categorias";
        $tsTitle = $tsTitle.' - Categorías!';
        $smarty->assign("tsTopcat",$tsPosts->topcat());
        $smarty->assign("tsPostsAzar",$tsPosts->getPostsAzar());
    } else {
        // PAGINA
        $tsPage = "home";        

luego buscan

        // ULTIMOS COMENTARIOS
        $smarty->assign("tsComments",$tsPosts->getLastComentarios());


y debajo pegan
 

      //POSTS AL AZAR
      $smarty->assign("tsPostsAzar",$tsPosts->getPostsAzar());
      //POSTS POPULARES
      $smarty->assign("tsPopular",$tsPosts->PostsPopular());

PD: Deben copiar el archivo ajax.feed.php que se encuentra en inc/php/ajax/ajax.feed.php, ya que allí sabrán si hay nueva versión o cambios en el theme porque esto es lo que verán en el panel de la administración

rn3BALb.png

 

GUIA CONFIGURAR PHPMAILER

Para configurar visiten el repositorio de PHPMailer, allí explica cómo deben hacer para que este funcione correctamente, ya esta actualizado el PHPMailer

 

Eso es todo, espero no olvidarme de nada! cualquier cosa avisen!

Como siempre la demo:

https://mozzfirev4x.skn1.com/Spectre/

USUARIO: Demo

CONTRASEÑA: demouser

Edited by Miguel92
  • Like 1
  • Thanks 3

Share this post


Link to post
Share on other sites
hace 8 minutos, boreas dijo:

Excelente trabajo como siempre solo que quise probarlo pero no me dejo logear en la demo.

Ya lo arregle, me había equivocado la contraseña!

Aun le tengo que dar algunos detalles para que quede mejor!

Share this post


Link to post
Share on other sites

  • Similar Content

    • By Miguel92
      img(https://cdn.discordapp.com/attachments/465322846533451776/635989802839441408/2b.png)
      Proximamente estaré terminado este theme  
       
      https://codexweb.ml
      NO HAY USUARIO DEMO
    • By Miguel92
      Me maté con el nombre XD, simplemente lo llame como el framework css del mismo nombre, este theme estará conformado de 2 maneras:
       
      1 - Es todo el script completo desde cero con instalador
      2 - Es parte del script en el caso que sea una web con información. (vea las consultas al final de este topic)

      Es un framework que está en desarrollo, pero por el momento no utilizaremos todos los componentes.
       
      NOTA: Solo falta "Moderación"
      Descargar desde GitHub
       
      Spectre -> Smarty 3.1.31 | Jquery 3.4.1 | Php 7+ | PHPMailer 6.+
      Spectre Framework
      Spectre Icons 36 Iconos
      LineIcons 460 Iconos
       
      El theme tendrá una carpeta adicional:
      Módulos -     |-- css         |-- LineIcons.min.css         |-- spectre-exp.min.css         |-- spectre-icons.min.css         |-- spectre.min.css     |-- fonts         |-- Acme-Regular.woff2         |-- LineIcons.eot         |-- LineIcons.svg         |-- LineIcons.ttf         |-- LineIcons.woff     |-- img         |-- favicon.ico         |-- favicon.png         |-- header.png         |-- spectre-logo.png     |-- js         |-- spectre.js     -- spectre.php  
      CAPTURA:

       
      DEMO:
      SpectreDemo
      Usuario:         Demo
      Contraseña:  demouser
       
      Editar header.php
      Buscan estas líneas
          // Mensajes     $smarty->assign('tsMPs',$tsMP->mensajes);
      y debajo pegan esta
          include 'modulos/spectre.php';  
      Como se incluyó el PHPMailer deben ver este mini tutorial Ver configuración del phpmailer  
      Solo si ya tienen una web funcional (ya instalada):
      Buscar en config.inc.php y borran esto
      define('RC_PUK',"6LcXvL0SAAAAAPJkBrro96lnXGZ56TBRExEmVM3L"); // public key recaptcha define('RC_PIK',"6LcXvL0SAAAAAEg1zizOxJPTjlD0ZtbbzubF2NjE"); // private key recaptcha Deben instalar el theme como Spectrev1.0
       
      Ejecutar consultas:
      ALTER TABLE `w_configuracion` ADD `c_recaptcha` int(1) NOT NULL DEFAULT '0'; ALTER TABLE `w_configuracion` ADD `pkey3` varchar(55) NOT NULL; ALTER TABLE `w_configuracion` ADD `skey3` varchar(55) NOT NULL;  
    • By Miguel92
      Es una plantilla originalmente creada por @Rhuan y que fue re-diseñada por @Tuente para hacerla más parecida a la plantilla original.
       

       
      Se actualizó a:
      Wysibb Recaptcha v2  
      NOTA: No he tocado el diseño!
      DESCARGAR
       
      Cualquier problema no dudes en dejarlo en los comentarios.
       
      Si hay algunos problemas puedes visitar
       
       
    • By Miguel92
      Este es un theme en desarrollo que lo tengo en pausa, si alguien lo quiere que me avise así le doy para que lo descarguen en el caso que quieran hacerlo desde cero ya contará con el instalador modificado..
       
      Esta es la demo, no..no tiene usuario demo.
      https://clon.mozzfirev4x.skn1.com/
       
      Tiene:
      Smarty 3.1.31
      Jquery 3.4.0
      Php 7.x
      MiniCss 3.0.1
      Feather Icons 4.21.0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Patrocinador



  • ×