Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Contar cantidad de values distintos dentro de un mismo meta_key

Estas en el tema de Contar cantidad de values distintos dentro de un mismo meta_key en el foro de WordPress en Foros del Web. Buenas a todos: Estoy utilizando los post_meta para introducir información relativa a los posts al tratarse de fotografías, en lugar de texto. Inserto cosas como ...
  #1 (permalink)  
Antiguo 19/10/2011, 19:51
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Contar cantidad de values distintos dentro de un mismo meta_key

Buenas a todos:
Estoy utilizando los post_meta para introducir información relativa a los posts al tratarse de fotografías, en lugar de texto. Inserto cosas como la localización, nombre de la modelo, nombre de la compañía a la que pertenece etcétera.
Existe alguna manera de consultar la cantidad de registros distintos para una misma meta_key? Pero solo los distintos no el total.

Por ejemplo puedo tener 200 fotos en total, pero de una misma modelo tengo 50 y de la otra 20, por lo que son solo 2 modelos diferentes.
¿Existe alguna manera de contar los valores distintos que se encuentren dentro de una misma key?

Gracias a todos por cualquier orientación sobre el tema.
  #2 (permalink)  
Antiguo 20/10/2011, 11:54
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 1 mes
Puntos: 535
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Seguramente si hay formas, aunque ahora no se me ocurre. Sólo quiero decirte que deberías haber usado taxonomías para ello en vez de custom metadata. Estás a tiempo de cambiar o el desarrollo ya está demasiado avanzado?
__________________
...___...
  #3 (permalink)  
Antiguo 09/11/2011, 21:36
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Me temo que ya esta demasiado avanzado, hablamos de unos 2500 posts...
Quizás con alguna consulta directa a la base de datos o algo... Pero no doy con ello.
  #4 (permalink)  
Antiguo 10/11/2011, 10:33
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 8 meses
Puntos: 638
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Para el asunto de las consultas directas a la base de datos, te recomiendo este link http://codex.wordpress.org/wpdb y este para que entiendas cómo funciona el asunto http://codex.wordpress.org/Database_Description

Saludos
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #5 (permalink)  
Antiguo 10/11/2011, 10:44
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 1 mes
Puntos: 192
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Tal vez una aproximación:

Código PHP:
Ver original
  1. global $wpdb;
  2. $sql = "SELECT m.meta_value FROM wp_postmeta m where m.meta_key = 'nombre_de_mi_meta_key' order by m.meta_id";
  3. $results = $wpdb->get_results( $sql );
  4. foreach( $results as $result )
  5. {
  6. echo $result->meta_value;
  7. }
__________________
nahueljose.com.ar
  #6 (permalink)  
Antiguo 14/11/2011, 18:07
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Cita:
Iniciado por Naahuel Ver Mensaje
Tal vez una aproximación:

Código PHP:
Ver original
  1. global $wpdb;
  2. $sql = "SELECT m.meta_value FROM wp_postmeta m where m.meta_key = 'nombre_de_mi_meta_key' order by m.meta_id";
  3. $results = $wpdb->get_results( $sql );
  4. foreach( $results as $result )
  5. {
  6. echo $result->meta_value;
  7. }
Soberbio.... y genial. Sin duda una gran idea... muchas gracias de verdad!!!
  #7 (permalink)  
Antiguo 18/11/2011, 20:33
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 19 años, 10 meses
Puntos: 832
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Cita:
Iniciado por adriantht Ver Mensaje
Buenas a todos:
Estoy utilizando los post_meta para introducir información relativa a los posts al tratarse de fotografías, en lugar de texto. Inserto cosas como la localización, nombre de la modelo, nombre de la compañía a la que pertenece etcétera.
Existe alguna manera de consultar la cantidad de registros distintos para una misma meta_key? Pero solo los distintos no el total.

Por ejemplo puedo tener 200 fotos en total, pero de una misma modelo tengo 50 y de la otra 20, por lo que son solo 2 modelos diferentes.
¿Existe alguna manera de contar los valores distintos que se encuentren dentro de una misma key?

Gracias a todos por cualquier orientación sobre el tema.
Intenta así:

Código PHP:
Ver original
  1. <?php
  2. $array = get_posts('meta_key=hola&meta_value=pepe');
  3. echo count($array);
  4. ?>
  #8 (permalink)  
Antiguo 01/12/2011, 21:21
 
Fecha de Ingreso: abril-2011
Mensajes: 72
Antigüedad: 13 años
Puntos: 0
Respuesta: Contar cantidad de values distintos dentro de un mismo meta_key

Metacortex, gracias por tu aportación.

Lamentablemente eso me permite saber cuantos meta_key con el valor "pepe" existen. Pero yo pretendo saber cuantos valores existen para la meta_key.
Lo he conseguido gracias a no especificar los valores.
Esto es...
Código:
<?php
$array = get_posts('meta_key=hola&meta_value='' ');
echo count($array);
?>
Eso me da un array que me da todos los resultados que contienen esa meta_key, y luego los recorro con un bucle para extraerlos todos.
Mi consulta, para descargar el script un poco, pretendía obtenerlos directamente a un array, no pasandolos por un bucle...
Gracias de todas maneras

Etiquetas: contar-resultados, metadatos, meta_value
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:10.