Al escribir un post en WordPress se pueden subir imágenes a la misma hora de escribir el artículo. Estas imágenes, que forman parte de la biblioteca de medios, están asociados a ese puesto en particular. La peculiaridad de este comportamiento radica en la capacidad de extraer estas imágenes sin importar si fueron colocados físicamente en el interior del poste. Este procedimiento, por lo tanto, es mucho más interesante que el uso de campos personallizzati (campos personalizados) o "difícil" (para algunos) regexp (expresiones regulares) en el cuerpo del mensaje. Más recientemente, WordPress te permite insertar una galería simple, pero inmediata, tomando ventaja de esta conexión entre el mensaje y la imagen subida. Bajo nivel de las imágenes cargadas son tratados exactamente igual que un mensaje, es decir, la tabla de base de datos y los campos son exactamente los mismos.
Por ejemplo, si un determinado puesto - cargado de imágenes - se utiliza el siguiente código:
1 2 3 4 5 6 | / / Donde $ post_id es el id del mensaje / / Si estamos en un bucle que podemos usar $ post-ID get_children ( 'post_type=attachment&post_mime_type=image&post_parent=' . $post_id ) ; $ A = & get_children ('post_type = apego y post_mime_type = imagen y post_parent =' $ Post_id.); $ai as $image ) { foreach ($ a como $ imagen) { . $image -> post_title . '</p>' ; . <p> 'echo $ imagen -> post_title' </ p> ".; } |
Se obtiene la lista de los títulos de las imágenes subidas. Para ver las imágenes basta con modificar la salida:
1 | . $image -> post_title . '<img src="' . $image -> guid . '" /></p>' ; . <p> 'echo $ imagen -> post_title "/> </ p>'". <img src="'. $image -> orientación. "; |
Sin embargo, es más correcto - por razones de compatibilidad con futuras actualizaciones - utilizar las características que ofrece WordPress para recuperar la url de la imagen. Por ejemplo, podemos ver en la imagen es real y bolsa de viaje grande a través de la imagen en miniatura:
1 2 3 | . $image -> post_title . echo '<p>' $ imagen -. post_title>. wp_get_attachment_thumb_url ( $image -> ID ) . '" />' . '<img Src="'. Wp_get_attachment_thumb_url ($image -> ID).' "/>". wp_get_attachment_url ( $image -> ID ) . '" /></p>' ; '<img Src="'. Wp_get_attachment_url ($image -> ID).' "/> </ P> '; |
Orden
En los ejemplos que hemos visto en las imágenes se recuperan sin ningún orden específico para un orden inverso al máximo de carga. Si alguna vez ha tratado de utilizar la galería de WordPress, te darás cuenta de que esto le permite ordenar las imágenes cargadas, la clasificación se puede hacer por título, fecha y hora o un modo aleatorio. Además, puede utilizar el modo manual, así que elegimos un orden de las imágenes, siempre en relación con el concepto de túnel, entonces la sucesión (la primera, segunda, tercera, etc ...). También puede indicar cómo aumentar o disminuir el criterio que hemos elegido. En particular, la clasificación manual, funciona como en las páginas, es decir, utilizando el campo menu_order (inicialmente se establece en 0 para todas las imágenes cargadas).
Así que si has subido una serie de imágenes y manipulado en un mensaje con la clasificación manual, por lo que hacemos en nuestro ciclo se tiene en cuenta el orden. per qualsiasi tipo di campo ( menu_order , ID , data , etc…): Un rápido, fácil y, para ello es utilizar el usort() para poner en orden nuestra array para cualquier tipo de terreno ( menu_order , ID , data , etc ...):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | / / Donde $ post_id es el id del mensaje / / Si estamos en un bucle que podemos usar $ post-ID get_children ( 'post_type=attachment&post_mime_type=image&post_parent=' . $post_id ) ; $ A = & get_children ('post_type = apego y post_mime_type = imagen y post_parent =' $ Post_id.); / / Aplicar una función de clasificación por lo que mi / / Usted puede elegir el campo en el que se / / La clasificación (en nuestro caso menu_order) $ai , "sortImage" ) ; usort ($ a, "sortImage"); $ai as $image ) { foreach ($ a como $ imagen) { . $image -> post_title . '<img src="' . wp_get_attachment_thumb_url ( $image -> ID ) . '" /></p>' ; . <p> 'echo $ imagen -> post_title "/> </ p>'". <img src="'. wp_get_attachment_thumb_url ($image -> ID). '; } $a , $b ) { función sortImage ($ a, $ b) { $a -> menu_order == $b -> menu_order ) return 0 ; if ($ a -> b == $ menu_order -> menu_order) return 0; $a -> menu_order > $b -> menu_order ) ? 1 : - 1 ; return ($ a -> menu_order> $ b -> menu_order) 1: - 1;? / / Retorno ($ a-> menu_order> $ b-> menu_order)? -1: 1 / / descendente } |
Ni que decir tiene, por supuesto, si desea recuperar el "antes" y simplemente borra la única imagen cargada foreach() .










[...] Recuperar imágenes en una recuparare Publicar un guión a imágenes de un mensaje, incluso si no se inserta realmente en el texto! [...]
Hola y gracias por tu artículo. Sin embargo, "yo no entendía lo que es:" Quiero el código para entrar a recuperar sólo una vista previa de la primera imagen insertada en el mensaje ...
@ James: comentar la línea de los últimos 1012, eliminando así el
foreach. En lugar de la fila 10, así que antes deecho ...escriba:Espero que yo entendía su pregunta ...
@ Giovambattista Fazioli:
Giovambattista Hola y muchas gracias por tu respuesta. He insertado el código, ya que han cambiado y no parece ser un problema dependiendo de usort y también la imagen no se muestra ...
Warning: usort() [function.usort]: Invalid comparison function. in /membri2/xxxxx/wp-content/themes/nomtema/index.php on line 27¿Por qué? uso de WP 2.9.1
@ James: Parece que la función de clasificación
sortImage()no está escrita correctamente. Si postami todo el código que has escrito, incluso en el correo.@ Giovambattista Fazioli:
Que yo llamo el código php que inserta a través de correo electrónico
Muchas gracias
Hola,
Me gustaría pedirle información sobre el guión, con la introducción de WP 3.0, que añade la capacidad de poner los pulgares, que tendría que cambiar el guión para no aparecer en la lista de imágenes, que se utiliza como el pulgar de la entrada.
¿Sabe usted si me das una mano?
gracias de antemano,
George
@ Jorge: puedes hacerlo de esa manera. Antes de retirar las imágenes relacionadas con un mensaje, extraer cualquier imagen en miniatura (como se indica en WordPress 9.2 +: miniaturas mensaje nuevo rasgo ). Dentro de la extracción de bucle, entonces, si la imagen se asocia con la imagen en miniatura para excluir. Si he entendido bien ...
Perfecto, muchas gracias! Por mi manera de pensar acerca de una solución para este tipo de pensamiento o, alternativamente, insertar el dedo pulgar como la primera imagen de la galería y luego a través de un artificio para excluir:
una solución podría ser igualmente eficaz en su opinión?
Gracias por la respuesta,
George
@ Jorge: eso está bien también su posicionamiento como antes, sólo recuerda
Hola,
lo siento si me siguen molestar, pero me da errores y no entienden por qué ...
Mi función es la siguiente:
2
3
4
$ai as $image ) { foreach ($ a como $ imagen) {
. $image -> post_title . '</p>' ; . <p> 'echo $ imagen -> post_title' </ p> ".;
}
¿Cómo puedo hacer que se tome un cheque para ver si hay un mensaje de miniatura y luego excluir a ella? En mi plantilla que ha habilitado el soporte esta función y todo funciona perfectamente, no sólo como yo lo entendía precisamente el control que es el elemento de el pulgar como consecuencia de la entrada y luego excluirlo de la salida ...
Si usted me puede ayudar a evitar que se corte las venas ... estoy perdiendo la paciencia detrás de esta cosa y no lo puedo entender ...
muchas gracias,
George