Ocultar descripción...
Avisos
Vaciar todo

Ocultar descripción virtuemart a usuarios no identificados  

 
Robert Torres
 Robert Torres
Estimable Member

Buenas tardes en mi web, que está todavía en construcción, en la descripción de los productos de virtuemart tengo una imagen con un hipervínculo hacia un pdf, ese pdf me gustaría que solo lo vieran usuarios registrados, pero no se como hacerlo, o bien capar los hipervinculos o hacer que la ultima parte de productos de virtuemart cuando te enseña la descripción no tuvieran acceso los usuarios registrados.
Adjunto imagen de la parte final del catalogo virtuemart donde aparece la descripción.

URL del sitio: Contenido solo visible a usuarios registrados

Citar
Respondido : 19/04/2016 2:41 pm
Pablo Velasco
 Pablo Velasco
Illustrious Member

Hola,

Prueba a hacer lo siguiente: edita el archivo templates/jano/html/com_virtuemart/productdetails/default.php. Previa copia de seguridad del mismo, localiza la siguiente línea:

if (!empty($this->product->product_desc)) {

y reemplázala por este código:

$usuario = JFactory::getUser();
if (!empty($this->product->product_desc) && $usuario->id > 0) {

De esta forma, la descripción solo se debería mostrar a usuarios registrados. Comprueba si funciona.

ResponderCitar
Respondido : 19/04/2016 4:25 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Robert Torres
 Robert Torres
Estimable Member

Buenas tardes, gracias por la respuesta me hubiera gustado poder mantener la descripción y la imagen del pdf, solo que al clicar al pdf saliera la ventana de registrarse al igual que sale en realizar una pregunta.
No se si se le puede dar alguna propiedad a la imagen del pdf para que se tenga que registrar antes de acceder al hipervinculo.

Si no hubiera otra manera de hacerlo, y lo dejara así, me gustaría poner un recuadro de texto como puse en su día en la web vieja ( http://goodair.es/productos/neumatica/redes-de-aire-comprimido-y-gas/redes-de-aire-comprimido-y-gas-infinity/valvulas- ) justo debajo de realizar una pregunta con un texto indicando que para la visualización técnica se registren y que apareciera automáticamente en todos los productos pero no recuerdo como lo hice en la anterior.

ResponderCitar
Respondido : 19/04/2016 4:51 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Podrias evaluar el estado del usuario antes de mostrar la descripción.

El código anterior quedaría de la siguiente forma :

$mensaje ="Si está interesado en este producto póngase en contacto con nosotros a través de nuestro correo electrónico comercial@goodair.es o llame al 93 337 40 86";

$usuario = JFactory::getUser();

if ($usuario->guest){
	echo "
".$mensaje."
" } if (!empty($this->product->product_desc) && $usuario->id > 0) {

En la variable mensaje esta la cadena de mensaje.

Saludos

ResponderCitar
Respondido : 19/04/2016 10:22 pm

Robert Torres
 Robert Torres
Estimable Member

Buenos días cada vez que inserto el código que me habéis dicho, me da error y me deja de funcionar la página.

Inserto este código:

$usuario = JFactory::getUser();

if ($usuario->guest){
echo "

".$hola."

"
}

if (!empty($this->product->product_desc) && $usuario->id > 0) {

He puesto hola como ejemplo de mensaje.

ResponderCitar
Respondido : 20/04/2016 10:54 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Juan.
El código si pones hola quedaría así:

$hola ="Si está interesado en este producto póngase en contacto con nosotros a través de nuestro correo electrónico comercial@goodair.es o llame al 93 337 40 86";
 
$usuario = JFactory::getUser();
 
if ($usuario->guest){
	echo "
".$hola."
" } if (!empty($this->product->product_desc) && $usuario->id > 0) {

Si te das cuenta la variable de ' $hola = mi mensaje Mensaje ' y la del 'echo "

".$hola."

' tiene que tener el mismo nombre.

Un saludo

ResponderCitar
Respondido : 20/04/2016 2:39 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Robert Torres
 Robert Torres
Estimable Member

Buenas tardes debo de hacer algo mal, porque al insertar el código cuando llego a la zona de descripción de un producto como por ejemplo:
( http://goodair.es/goodair2016/productos/neumatica/electrovalvulas/electrovalvulas-mvsf-mvsg/mvsf-100- )
me da el error ( La página goodair.es no funciona / La página goodair.es no puede procesar esta solicitud ahora. 500 )
he dejado el código insertado para que podáis revisar si está bien introducido o no, lo que hago es cambiar:

if (!empty($this->product->product_desc)) {

por:

$hola ="Si está interesado en este producto póngase en contacto con nosotros a través de nuestro correo electrónico comercial@goodair.es o llame al 93 337 40 86";

$usuario = JFactory::getUser();

if ($usuario->guest){
echo "

".$hola."

"
}

if (!empty($this->product->product_desc) && $usuario->id > 0) {

ResponderCitar
Respondido : 20/04/2016 3:51 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

En la línea

echo "

".$hola."

"

Prueba poniendo un ; al final, es decir :

echo "

".$hola."

";

Si sigues con problemas mejor envía el archivo en formato zip para ve el código que has cambiado.

Saludos.

ResponderCitar
Respondido : 20/04/2016 7:13 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Robert Torres
 Robert Torres
Estimable Member

Buenas tardes Jhon, era eso muchas gracias, hay alguna manera de aplicarle a este texto cambios de estilo en css, me gustaría poder aplicarle el diseño del texto que parece marcado en el jpg que adjunto, un background, cambio de color...

ResponderCitar
Respondido : 20/04/2016 7:30 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Si, claro, ya que tienes una clase CSS en el mensaje, por ejemplo prueba agregando el siguiente código a tu archivo CSS de tu plantilla.

.msgvisitante{
background-color: #eefaff;
border-color: rgba(105, 158, 179, 0.3);
border-radius:4px;
color: #699eb3;
}

Si aún tienes dudas envía un producto en donde aparezca el mensaje para revisar.

Saludos.

ResponderCitar
Respondido : 20/04/2016 10:12 pm

Cursos Gratuitos WordPress

Robert Torres
 Robert Torres
Estimable Member

Perfecto muchas gracias, tema cerrado.

Saludos,

ResponderCitar
Respondido : 21/04/2016 10:14 am