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

[SOLUCIONADO] categoría como argumento en shortcode

Estas en el tema de categoría como argumento en shortcode en el foro de WordPress en Foros del Web. Hola, tengo un shortcode para un portfolio en el que quiero que aparezcan los post de portfolio de una categoría determinada. [show_post_snippets post_type="portfolio" number_of_columns=3 post_count=6 ...
  #1 (permalink)  
Antiguo 27/08/2014, 10:02
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
categoría como argumento en shortcode

Hola,

tengo un shortcode para un portfolio en el que quiero que aparezcan los post de portfolio de una categoría determinada.

[show_post_snippets post_type="portfolio" number_of_columns=3 post_count=6 image_size='medium' show_meta="false" layout_class="post-snippets full-width-snippets" show_meta="false" layout_class="post-snippets full-width-snippets" excerpt_count=100 display_text="true" show_excerpt="true" hide_thumbnail="false"]

Pero necesito que sólo muestre aquellos post de portfolio con la categoría "productos"

taxonomy=portfolio_category tag_ID=21 post_type=portfolio

No consigo incluir esta categoría como argumento en el shortcode y que sólo se muestre los post con dicha categoría
  #2 (permalink)  
Antiguo 27/08/2014, 12:36
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.442
Antigüedad: 11 años, 5 meses
Puntos: 1066
Respuesta: categoría como argumento en shortcode

Realmente lo importante no es el shortcode sino la query que utiliza para mostrar el contenido, agrega el parámetro en la query.... el resto saldrá como pan comido por pura lógica.

Revisa este link para que sepas como hacer para agregar lo que necesitas.
http://codex.wordpress.org/Class_Ref...omy_Parameters
  #3 (permalink)  
Antiguo 27/08/2014, 13:33
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Lo he leído y he hecho varios intentos. No domino em PHP. He intentado agregar en el shortcode argumentos como category_name="productos" o el tag_id=21 o cat=21

Por ejemplo:

[show_post_snippets post_type="portfolio" category_name="productos" number_of_columns=3 post_count=6 image_size='medium' show_meta="false" layout_class="post-snippets full-width-snippets" show_meta="false" layout_class="post-snippets full-width-snippets" excerpt_count=100 display_text="true" show_excerpt="true" hide_thumbnail="false"]

Pero no funciona... me saca todos los post, no sólo los de la categoría productos...
  #4 (permalink)  
Antiguo 27/08/2014, 13:49
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.442
Antigüedad: 11 años, 5 meses
Puntos: 1066
Respuesta: categoría como argumento en shortcode

te reitero que poco importa el shortcode, si el parámetro no lo estas recibiendo en la función y aplicando a la query.

Muéstranos que código estas implementando para la función que crea el shortcode.

Puedes agregar mil parámetros pero si tu php no sabe interpretarlos y/o que hacer con ellos, no te sirven de nada.
  #5 (permalink)  
Antiguo 27/08/2014, 15:17
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Entiendo.

me va a llevar algo de tiempo ver eso porque no tengo muchos conocimientos de php, pero me pongo a ello.

Gracias :)
  #6 (permalink)  
Antiguo 27/08/2014, 15:32
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Creo que podrían ser una de estas dos.

La primera es la que permite filtrar por la categorías:

Código PHP:
Ver original
  1. <?php
  2. /**
  3.  * Template Name: Portfolio 4 Column Sorted Full Width
  4.  *
  5.  * A custom page template for showing the most popular posts based on number of reader comments
  6.  *
  7.  * @package Enigmatic
  8.  * @subpackage Template
  9.  */
  10. get_header();
  11. ?>
  12.  
  13. <div id="portfolio-full-width">
  14.  
  15.     <?php
  16.     $args = array(
  17.         'number_of_columns' => 4,
  18.         'image_size' => 'large-thumb',
  19.         'posts_per_page' => 50,
  20.         'filterable' => true
  21.     );
  22.  
  23.     mo_display_sorted_portfolio_content($args);
  24.     ?>
  25.  
  26. </div> <!-- #portfolio-full-width -->
  27.  
  28. <?php
  29. get_footer(); // Loads the footer.php template. ?>
  30.  
  31.  
  32. Esta otra es de otra plantilla del porfolio, que no filtra:
  33.  
  34. <?php
  35. /**
  36.  * Template Name: Portfolio Category 3 Column Full Width
  37.  *
  38.  * A custom page template for displaying the portfolio items belonging to a certain portfolio category
  39.  *
  40.  * @package Enigmatic
  41.  * @subpackage Template
  42.  */
  43. get_header();
  44. ?>
  45.  
  46.     <div id="portfolio-full-width">
  47.  
  48.         <?php
  49.         $portfolio_category = get_post_meta(get_queried_object_id(), 'mo_portfolio_category', true);
  50.  
  51.         $args = array(
  52.             'number_of_columns' => 3,
  53.             'image_size' => 'large-thumb',
  54.             'posts_per_page' => 6,
  55.             'filterable' => false,
  56.             'portfolio_category' => $portfolio_category
  57.         );
  58.  
  59.         mo_display_sorted_portfolio_content($args);
  60.         ?>
  61.  
  62.     </div> <!-- #portfolio-full-width -->
  63.  
  64. <?php

Última edición por metacortex; 28/08/2014 a las 07:19
  #7 (permalink)  
Antiguo 27/08/2014, 18:54
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.727
Antigüedad: 17 años, 6 meses
Puntos: 998
Respuesta: categoría como argumento en shortcode

tienes que ir a donde se define show_post_snippets que es algo específico de tu theme, supongo que será en el archivo functions.php
__________________
Pasamos tus PSD a HTML

Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. -
  #8 (permalink)  
Antiguo 28/08/2014, 01:31
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Quizás sea ésta:

function mo_show_post_snippets_shortcode($atts) {
$args = shortcode_atts(array(
'post_type' => null,
'post_count' => 4,
'image_size' => 'small',
'title' => null,
'layout_class' => '',
'excerpt_count' => 100,
'number_of_columns' => 4,
'show_meta' => false,
'display_text' => true,
'show_excerpt' => true,
'hide_thumbnail' => false,
'row_line_break' => true,
'terms' => '',
'taxonamy' => 'category'
), $atts);

$output = mo_get_post_snippets($args);

return $output;

}

add_shortcode('show_post_snippets', 'mo_show_post_snippets_shortcode');
  #9 (permalink)  
Antiguo 28/08/2014, 02:02
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Aparentemente, sin saber, php, por lo que veo (creo) que las categorías debería dárselas con terms="productos" donde productos es el slug de la categoría, y si quisiera otra se la añado separándola por una coma.

También parece que debería poner taxonamy=”portfolio_category”

Mirando puede que deba añadir al shortcode taxonamy=”portfolio_category” terms=“productos”

Pero hago pruebas y, o se ven las 3 categorías qee ya tienen los porfolios, o no se ve ninguna...

Alfo hago mal, está claro
  #10 (permalink)  
Antiguo 28/08/2014, 03:34
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 10 años, 1 mes
Puntos: 426
Respuesta: categoría como argumento en shortcode

Ojo, no es taxonamy sino taxonomy.

¿No usas el plugin Posts Snippets?
__________________
Mi blog personal | Mi G+
  #11 (permalink)  
Antiguo 28/08/2014, 03:54
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Ya lo tengo. Efectivamente, es como decís, tenía que ir a la función y mirar allí:

Las categorías tienen que estar entre terms="slug1,slug2" separadas por comas. Por ejemplo:

taxonamy=”portfolio_category” terms=“productos,formacion”

[show_post_snippets post_type="portfolio" taxonamy=”portfolio_category” terms=“productos,formacion” number_of_columns=3 post_count=6 image_size='medium' show_meta="false" layout_class="post-snippets full-width-snippets" show_meta="false" layout_class="post-snippets full-width-snippets" excerpt_count=100 display_text="true" show_excerpt="true" hide_thumbnail="false"]

Pero ahora lo que necesito es que sea shortable...

Necesito encontrar el argumento o lo que sea que lo haga shortable...

:)
  #12 (permalink)  
Antiguo 28/08/2014, 03:58
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Zanguanga, en el código de la función aparece escrito como:

'taxonamy' => 'category'
  #13 (permalink)  
Antiguo 28/08/2014, 07:23
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.025
Antigüedad: 15 años, 2 meses
Puntos: 832
Respuesta: categoría como argumento en shortcode

Por supuesto que no te funciona. Es taxonomy, no taxonamy.

Por favor, encierra tu código entre etiquetas [php ] o [highlight ] para que sea más legible y te puedan ayudar mejor.
  #14 (permalink)  
Antiguo 28/08/2014, 08:22
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Sí. Era un error en una línea del código del template. Ya les he mandado un report.

De momento ya casi lo tengo. Tengo 2 porfolios diferentes, cada uno con dos categorías diferentes.

Pero necesito que sean sortables... tengo que encontrar la función donde esté ese argumento y pasarlo...
  #15 (permalink)  
Antiguo 02/09/2014, 16:26
 
Fecha de Ingreso: julio-2011
Mensajes: 81
Antigüedad: 8 años, 1 mes
Puntos: 3
Respuesta: categoría como argumento en shortcode

Gracias por las respuestas. Realmente para seguir necesito un buscador. Tengo que seguir por ahí.

Etiquetas: post, shortcode
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 09:05.