Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/02/2012, 09:32
vicfs
 
Fecha de Ingreso: diciembre-2011
Mensajes: 4
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Ocultar contenidos según usuarios / Wordpress

Lo cierto es que al final no había buscado también como yo pensaba... Buscando en los temas similares, he conseguido dar con la solución a todo lo que buscaba... Listo aquí los pasos, por si a alguien más le puede servir.

Empezaré explicando la situación. En un blog que contiene publicidad, queríamos "esconder" esta publicidad a requerimiento del usuario al estilo Microsiervos . Sin embargo, el problema que nos encontramos es que en el blog se muestran banners de publicidad de 4 maneras diferentes, por lo tanto, ninguna solución parecía servirnos, dado el uso diferente que hace Wordpress del código, de los shortcodes y de las zonas donde los apliques.

Os explico como resolvimos cada apartado.

- Publicidad en páginas.

Cuando el banner está insertado mediante código HTML en el cuerpo de una página, la manera de ocultar/mostrar es sencilla mediante una modificación en functions.php:

add_shortcode( 'visitante', 'shortcode_para_visitantes' );

function shortcode_para_visitantes( $atts, $content = null ) {
if ( ( !is_user_logged_in() && !is_null( $content ) ) || is_feed() )
return $content;
return '';
}


add_shortcode( 'miembro', 'shortcode_para_miembros' );

function shortcode_para_miembros( $atts, $content = null ) {
if ( is_user_logged_in() && !is_null( $content ) && !is_feed() )
return $content;
return '';
}


De esta manera, sólo debemos llamar a las funciones:


[visitante]Lo que ven los no registrados[/visitante]
[miembro]Lo que ven los registrados[/miembro]



- Publicidad en las categorías.

Puede que alguno, quiera segmentar su publicidad mostrando ciertos banners, según la categoría de entradas en la que se encuentre el usuario. Esto es, entre el nombre de la categoría y la primera entrada de la lista (podéis ubicarlo donde queráis).

No hemos encontrado ningún plugin que gestione banners en categorías, de manera más o menos libre (si conocéis alguno decirlo por favor), así que nuevamente hemos introducido los banners de forma manual, pero esta vez directamente en el código de archive.php.

Además de buscar la función correcta para mostrar cada banner en su apartado, debíamos conseguir que la publicidad se mostrase o no, a registrados y no registrados.

Los tags de las funciones que creamos antes, no sirven en php puro, así usamos otro método similar:

<?php if (is_category(51)) { ?>
<?php if ( !($user_ID) ) { ?>
Lo que ven los no registrados
<?php }else{ ?>
Lo que ven los registrados
<?php } ?>
<?php } ?>

El número de categoría debéis cambiarlo por el de cada temática que necesitéis.


- Publicidad en widgets.

Si usáis algún código de Adsense o similar, incluyéndolo en un widget del sidebar, os encontraréis con que los tags de nuestras funciones iniciales, tampoco nos sirven, ya que el editor de texto de los widgets no los interpreta bien. ¿Qué hacer?

Añadir el plugin Widget Shortcodes, que os permite añadirlos (y ser reconocidos) en las áreas de texto de cualquier elemento del sidebar.


- Publicidad rotativa en texto HTML.

Si queréis tener algún plugin de rotación de banners pero queréis alto grado de personalización individual como nosotros, en lugar de un plugin de gestión de banners podéis usar uno de rotación de texto HTML. La inserción sigue siendo manual como en los otros, pero os permitirá personalizar lo que queráis.

De igual modo que en el anterior, los shortcodes ahora si serán reconocidos, por el plugin que comentábamos en el punto anterior.




Mucho lío para gestionar distintas zonas de publicidad y para encima hacerlas "ocultables" a vuestro antojo. Verdad? Así es. Pero no hemos encontrado otro modo. Lo suyo sería un plugin o widget, que te permitiera no sólo insertar banners sino hacerlo en cualquier punto del blog (post, paginas, portada, categorías, búsquedas, sidebar, etc...), pero no encontramos ninguno tan completo que toque todos los palos.

Si hubiera uno, tal vez el método para esconder la publi según el gusto, sería más sencillo, con menos pasos... Iluminarnos, seguro que estamos dando muchas vueltas para algo que es más sencillo. A que sí?

Rizando el rizo, ya además, que el plugin lleve unas estadísticas de clicks de los banners, porque con tantos sistemas distintos, ponte a calcular el impacto de los mismos... En fin, seguimos cacharreando...