Phpost

Versión completa: Tienda de Puntos v1.0
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Tienda de Puntos v1.0
Nuevo módulo para Risus Nova 2.0 — PHPost


Primer complemento oficial para Risus Nova 2.0: la Tienda de Puntos. Permite a los usuarios gastar sus puntos acumulados en mejoras para su perfil y sus posts.


🛒 ¿Qué incluye?
 
  • Cambio de nick — Los usuarios pueden cambiar su nombre una vez cada 30 días.
  • Título personalizado — Un texto exclusivo que aparece bajo el nick en comentarios y perfil.
  • Color de nombre — Personaliza el color del nick con cualquier color hexadecimal.
  • Marco de avatar — Añade un marco especial alrededor del avatar.
  • Destacar post 24h — El post aparece destacado en la portada durante 24 horas.
  • Post fijado 48h — El post queda fijado en su categoría durante 48 horas.
  • Subir de rango — Sube al siguiente rango sin necesidad de acumular más puntos.
  • Medallas — Obtén medallas exclusivas para el perfil.
 


📋 Requisitos
 
  • Risus Nova 2.0 instalado y funcionando
  • PHP 8.0+
  • MySQL 5.7+ / MariaDB 10.4+
 


🛠️ Instalación

Paso 1 — Ejecutar el instalador

Sube la carpeta install/ del ZIP a la raíz de tu sitio y accede a:
 
Código:
Registrate o inicia tu sesión para ver este contenido

Pulsa Instalar ahora. El instalador creará automáticamente:
  • Tabla w_tienda — catálogo de artículos
  • Tabla w_tienda_compras — historial de compras
  • Columnas nuevas en u_miembros: user_title, user_name_color, user_avatar_frame
  • Columnas nuevas en p_posts: post_featured, post_sticky_until
  • 8 artículos de ejemplo con precios predefinidos

⚠️ Elimina la carpeta install/ del servidor cuando termine.

Paso 2 — Subir los archivos
 
Código:
inc/class/c.tienda.php     →  inc/class/
inc/php/tienda.php         →  inc/php/
themes/default/css/tienda.css  →  themes/default/css/
themes/default/t.tienda.tpl            →  themes/default/templates/
themes/default/t.tienda.historial.tpl  →  themes/default/templates/
themes/default/t.tienda.admin.tpl      →  themes/default/templates/
themes/default/t.tienda.admin.form.tpl →  themes/default/templates/

Paso 3 — Añadir el CSS en el header

Abre themes/default/templates/sections/main_header.tpl y añade esta línea junto al resto de CSS:
 
Código:
<link href="{$tsConfig.css}/tienda.css" rel="stylesheet" type="text/css">

Paso 4 — Añadir el enlace en el menú

Abre themes/default/templates/sections/head_menu.tpl y añade este elemento en el menú principal:
 
Código:
<li class="tabbed {if $tsPage == 'tienda'}here{/if}" id="tabbedtienda">
    <a title="Ir a la Tienda" onclick="menu('tienda', this.href); return false;" href="{$tsConfig.url}/tienda/">
        <i class="fa-solid fa-store"></i> Tienda
    </a>
</li>

Paso 5 — Borrar la caché

Borra el contenido de la carpeta /cache/ desde el panel de administración o desde el gestor de archivos del hosting.


⚙️ Gestionar los artículos

Accede como administrador a tudominio.com/tienda/?action=admin para:
  • Crear nuevos artículos
  • Editar precios y descripciones
  • Activar o desactivar artículos
 


🗑️ Desinstalar

Si quieres eliminar el complemento, ejecuta esto en phpMyAdmin:
 
Código:
DROP TABLE IF EXISTS w_tienda;
DROP TABLE IF EXISTS w_tienda_compras;
ALTER TABLE u_miembros DROP COLUMN user_title;
ALTER TABLE u_miembros DROP COLUMN user_name_color;
ALTER TABLE u_miembros DROP COLUMN user_avatar_frame;
ALTER TABLE p_posts DROP COLUMN post_featured;
ALTER TABLE p_posts DROP COLUMN post_sticky_until;

Y elimina los archivos subidos en el paso 2.

 
Capturas
[img]Registrate o inicia tu sesión para ver este contenido[/img]

[img]Registrate o inicia tu sesión para ver este contenido[/img]

[img]Registrate o inicia tu sesión para ver este contenido[/img]


 
Descarga

Mediafire
http://Registrate o inicia tu sesión par... contenido

Google Drive
http://Registrate o inicia tu sesión par... contenido


¿Tienes dudas o encuentras algún problema? Déjalo en los comentarios.
Estaba viendo las imágenes "Próximos pasos > 6." y vi que dices que agregue la línea para agregar tienda.css, lo cual sería innecesario ya que existe {$tsPage}.css básicamente ya lo va a cargar si se llama igual que la página, y al agregarlo tendría 2 líneas iguales.