¡Bienvenido a PHPost!

Para participar en el foro, descargar complementos y acceder al chat, es necesario tener una cuenta activa.
Por favor, regístrate utilizando un correo electrónico válido para completar la activación.

Descarga Risus Nova 2.0   (Ver notas de la versión) Estable | Actualizado: 16/06/2026

Regístrate Descargar Risus Nova
Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

SUGERENCIA Redes sociales en perfil [Mejorado][Simplificado] versión 2024
#1

7
Mejor respuesta del mensaje Redes sociales en perfil [Mejorado][Simplificado] versión 2024
Redes sociales en perfil
Mejorado y simplificado
Esto es una forma mucho más rápida y sencilla de poder añadir redes sociales a su sitio

Nueva versión.

En inc/ext/datos.php al final agregar esto
 
$redes = [
    'facebook' => [
        'iconify' => 'devicon:facebook',
        'nombre' => 'Facebook', 
        
'url' => 'Registrate o inicia tu sesión para ver este contenido'
    ],
    'twitter' => [
        'iconify' => 'devicon:twitter',
        'nombre' => 'Twitter', 
        
'url' => 'Registrate o inicia tu sesión para ver este contenido'
    ],
    'instagram' => [
        'iconify' => 'skill-icons:instagram',
        'nombre' => 'Instagram',
        'url' => 'Registrate o inicia tu sesión para ver este contenido'
    ],
    'youtube' => [
        'iconify' => 'logos:youtube-icon',
        'nombre' => 'Youtube',
        'url' => 'Registrate o inicia tu sesión para ver este contenido'
    ],
    'twitch' => [
        'iconify' => 'logos:twitch',
        'nombre' => 'Twitch',
        'url' => 'Registrate o inicia tu sesión para ver este contenido'
    ],
    'tiktok' => [
        'iconify' => 'logos:tiktok-icon',
        'nombre' => 'Tiktok',
        'url' => 'Registrate o inicia tu sesión para ver este contenido@'
    ],
    'discord' => [
        'iconify' => 'skill-icons:discord',
        'nombre' => 'Discord',
        'url' => 'Registrate o inicia tu sesión para ver este contenido
    ],
    '
reddit' => [
        '
iconify' => 'logos:reddit-icon',
        '
nombre' => 'Reddit',
        '
url' => 'Registrate o inicia tu sesión para ver este contenido
    
]
]; 


En inc/class/c.cuenta.php en la funcion loadPerfil() debajo de
 
$perfilInfo $this->unData($perfilInfo); 

Agregan
 
// Redes viculadas 
$perfilInfo['socials'] = empty($perfilInfo['user_socials']) ? '' json_decode($perfilInfo['user_socials'], true); 


En la función unData() buscar
 
$data['p_socials'] = unserialize($data['p_socials']);
$data['p_socials']['f'] = $data['p_socials'][0];
$data['p_socials']['t'] = $data['p_socials'][1];  

y reemplazar
 
// Redes sociales
$data["redes"] = $redes;
$data['p_socials'] = ($data['p_socials'] != NULL) ? json_decode($data['p_socials'], true) : [];
foreach (
$redes as $name => $valor$data['p_socials'][$name]; 


En la función loadHeadInfo() buscar
 
$data['p_socials'] = unserialize($data['p_socials']);
$data['p_socials']['f'] = $data['p_socials'][0];
$data['p_socials']['t'] = $data['p_socials'][1];  

y lo reemplazan por
 
// Redes Sociales
$data['p_socials'] = '';
if(!empty(
$data['p_socials'])) {
    $data['p_socials'] = json_decode($data['p_socials'], true);
    foreach ($redes as $name => $valor$data['p_socials'][$name];



En la función savePerfil() buscar
 
// EXTERNAS
$facebook $tsCore->setSecure($tsCore->parseBadWords($_POST['facebook']), true);
$twitter $tsCore->setSecure($tsCore->parseBadWords($_POST['twitter']), true); 

y lo reemplazan por
 
// EXTERNAS, Redes sociales
$red__social = [];
foreach (
$_POST["red"] as $llave => $id$red__social[$llave] = $tsCore->setSecure($tsCore->parseBadWords($id), true); 

luego buscan 
 
'socials' => serialize(array($facebook,$twitter)),  

y lo cambian por 
 
'socials' => json_encode($red__social), 


En inc/php/cuenta.php buscan
 
$smarty->assign("tsPerfil"$tsPerfil); 

debajo agregan
 
$smarty->assign("tsRedes"$redes); 


En inc/php/perfil.php buscan
 
$smarty->assign("tsInfo"$tsInfo); 

y debajo agregan
 
$smarty->assign("tsRedes"$redes); 


En tema/templates/modules/m.cuenta_perfil_me.tpl buscan
 
<div class="field">
    <label for="ft">Redes sociales</label>
    <img src="{$tsConfig.default}/images/icons/facebook.png" width="16" height="16" style="margin:5px; float:left" />
    <strong>facebook.com/</strong><input type="text" value="{$tsPerfil.p_socials.f}" maxlength="64" name="facebook" id="ft" class="text cuenta-save-2" style="width:204px"><br />
    <img src="{$tsConfig.default}/images/icons/twitter.png" width="16" height="16" style="margin:8px 5px 5px 160px; float:left" />
    <strong>twitter.com/</strong><input type="text" value="{$tsPerfil.p_socials.t}" maxlength="64" name="twitter" id="ft2" class="text cuenta-save-2" style="margin-top:3px; width:204px"><br />
</div>

y lo reemplazan por
 
<div class="field">
    <label for="ft">Redes sociales</label>
    <div style="display:grid;gap:.3rem;grid-template-columns: repeat(2, 1fr);">
      {foreach from=$tsRedes key=name item=red}
         <div class="red-item">
            <iconify-icon icon="{$red.iconify}"></iconify-icon>
            <input type="text" class="text" value="{$tsPerfil.p_socials.$name}" placeholder="{$red.nombre}" name="red[{$name}]">
         </div>
      {/foreach}
    </div>
</div>

En tema/templates/modules/m.perfil_sidebar.tpl y arriba de (En realidad lo pueden poner donde ustedes quieran)
 
<div style="margin-bottom: 10px">
    {$tsConfig.ads_300}
</div>

agregan 
 
{if $tsInfo.p_socials != ''}
<div class="widget w-seguidores clearfix">
    <div class="title-w clearfix">
        <h3>Redes Sociales</h3>
    </div>
    <div>
          {assign var="redesConContenido" value=[]}
      {assign var="redesSinContenido" value=[]}

      {foreach $tsRedes key=name item=red}
         {if $tsInfo.p_socials.$name != ''}
            {assign var="redConContenido" value="<a class='sitio icon icon_$name' target='_blank' href='{$red.url}/{$tsInfo.p_socials.$name}' title='{$red.nombre}' class=''></a>"}
            {append var="redesConContenido" value=$redConContenido}
         {else}
            {assign var="redSinContenido" value="<span class='sitio icon icon_$name icon_off'></span>"}
            {append var="redesSinContenido" value=$redSinContenido}
         {/if}
      {/foreach}

      {foreach from=$redesConContenido as $redConContenidoItem}
         {$redConContenidoItem}
      {/foreach}

      {foreach from=$redesSinContenido as $redSinContenidoItem}
         {$redSinContenidoItem}
      {/foreach}
      </div>
      <br>
{/if}


En perfil.css agregan
 
.icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin: 0.3rem;
}
.icon.icon_off {
    opacity: .5;
}
.icon.icon_facebook {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_twitter {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_instagram {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_youtube {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_twitch {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_tiktok {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_discord {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}
.icon.icon_reddit {
    background: url('Registrate o inicia tu sesión para ver este contenido no-repeat center center / contain;
}


Por último tema/templates/t.cuenta.tpl arriba de {include file="sections/main_footer.tpl"} agregan
 
<script src="Registrate o inicia tu sesión para ver este contenido"></script

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

En perfil (los de poco color es que no tienen enlaces y no tienen enlace, en cuando vayan agregando los enlaces se verá el color completo)
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Responder
#2

1
Está muy bien, gracias por compartirlo.
Dejo aquí para que se puedan descargar los iconos y una herramienta de edición.

Iconos

icon-icons.com/es/buscar/iconos/twitter

icon-icons.com/es/buscar/iconos/...=instagram

icon-icons.com/es/buscar/iconos/?filtro=twitch


Herramienta de edición de imágenes

iloveimg.com/es
Responder
#3

4
Me queda así:

Cuenta:
Registrate o inicia tu sesión para ver este contenido

Perfil:
Registrate o inicia tu sesión para ver este contenido
Responder
#4

1
(04-23-2024, 08:50 PM)Krsh escribió: Debes agradecer para ver el contenido...Me queda así:

Cuenta:


Perfil:

Hola, acabo de actualizar el topic... Algunos puntos los tendrás que reemplazar
Responder
#5

0
(04-23-2024, 09:57 PM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-23-2024, 08:50 PM)Krsh escribió: Debes agradecer para ver el contenido...Me queda así:

Cuenta:


Perfil:

Hola, acabo de actualizar el topic... Algunos puntos los tendrás que reemplazar

Ya lo reviso
Responder
#6

0
(04-24-2024, 02:15 AM)Krsh escribió: Debes agradecer para ver el contenido...
(04-23-2024, 09:57 PM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-23-2024, 08:50 PM)Krsh escribió: Debes agradecer para ver el contenido...Me queda así:

Cuenta:


Perfil:

Hola, acabo de actualizar el topic... Algunos puntos los tendrás que reemplazar

Ya lo reviso

Me sigue saliendo igual jeje
Responder
#7

0
(04-24-2024, 04:05 AM)Krsh escribió: Debes agradecer para ver el contenido...Me sigue saliendo igual jeje
Borraste la cache(contenido)...o sea la del directorio de tu proyecto, puede que siga tomando en archivo anterior

Accede al servidor de Discord y descarga ZCode|PHPost
Responder
#8

0
(04-24-2024, 04:08 AM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-24-2024, 04:05 AM)Krsh escribió: Debes agradecer para ver el contenido...Me sigue saliendo igual jeje
Borraste la cache(contenido)...o sea la del directorio de tu proyecto, puede que siga tomando en archivo anterior

Sip, sigue saliendo igual jeje
Responder
#9

0
(04-25-2024, 03:29 PM)Krsh escribió: Debes agradecer para ver el contenido...
(04-24-2024, 04:08 AM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-24-2024, 04:05 AM)Krsh escribió: Debes agradecer para ver el contenido...Me sigue saliendo igual jeje
Borraste la cache(contenido)...o sea la del directorio de tu proyecto, puede que siga tomando en archivo anterior

Sip, sigue saliendo igual jeje
Creo que ya descubrí el problema, son las versiones de smarty, así que prueba esto... busca los {foreach... y delante de la primer variable agrega from=
{foreach from=$tsRedes...

Accede al servidor de Discord y descarga ZCode|PHPost
Responder
#10

1
(04-26-2024, 10:12 PM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-25-2024, 03:29 PM)Krsh escribió: Debes agradecer para ver el contenido...
(04-24-2024, 04:08 AM)Miguel92 escribió: Debes agradecer para ver el contenido...
(04-24-2024, 04:05 AM)Krsh escribió: Debes agradecer para ver el contenido...Me sigue saliendo igual jeje
Borraste la cache(contenido)...o sea la del directorio de tu proyecto, puede que siga tomando en archivo anterior

Sip, sigue saliendo igual jeje
Creo que ya descubrí el problema, son las versiones de smarty, así que prueba esto... busca los {foreach... y delante de la primer variable agrega from=
{foreach from=$tsRedes...

Si funciono, ahora solo no reconoce esto en el perfil Registrate o inicia tu sesión para ver este contenido
Responder


Compartir en:

Salto de foro:


Usuarios navegando en este tema: 2 invitado(s)