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

paginas como post

Estas en el tema de paginas como post en el foro de WordPress en Foros del Web. he consegido poner categorias y tags a las paginas y quitarles los comentarios, pero me gustaria que al pulsar en cada categoria en el menu ...
  #1 (permalink)  
Antiguo 22/05/2012, 08:13
 
Fecha de Ingreso: octubre-2011
Ubicación: bilbao
Mensajes: 218
Antigüedad: 7 años, 8 meses
Puntos: 28
paginas como post

he consegido poner categorias y tags a las paginas y quitarles los comentarios, pero me gustaria que al pulsar en cada categoria en el menu se mostrara una pagina con el resumen de las paginas de esa categoria, como pasa con los post de una categoria que se muestran las primeras lineas en unas cajas no se si me explico..

cualquier cosa me sirve un plugin o si a hay que meter mano al codigo. El caso es que quiero hacer una web mas parecida a un portal que a un blog a si cualquier cosa que puedan recomendarme en ese sentido, lo agradazco un monton

un saludo!
  #2 (permalink)  
Antiguo 22/05/2012, 10:12
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 13 años, 10 meses
Puntos: 638
Respuesta: paginas como post

Según entiendo, lo que quieres hacer es que al entrar a una página se listen las hijas de esta. Yo empezaría usando la función wp_list_pages(), fíjate que tiene un parámetro child_of al que le pasas como valor el ID de la página padre...

Saludos.
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #3 (permalink)  
Antiguo 22/05/2012, 11:28
 
Fecha de Ingreso: octubre-2011
Ubicación: bilbao
Mensajes: 218
Antigüedad: 7 años, 8 meses
Puntos: 28
Respuesta: paginas como post

Ya he estado leyendo sobre las tags de categorias en el codex pero no se casi nada de php y no acabo de comprender como funcionan. Donde tengo que poner ese codigo? en que pagina y en que parte de esta? porque si edito en lo que seria la plantilla se pondria en todas las paginas??

de todas formas, con esta etiqueta solo me salen links de todas las paginas hijas no? es que me gustaria que se describiera un poco como los post que muestran las primeras lineas y la imagen..

siento hacer tantas preguntas pero quiero aprender sobre todo esto de modificar el php de la paginas y post para poder adaptarlos mejor a lo que quiero.

mil gracias, un saludo?
  #4 (permalink)  
Antiguo 22/05/2012, 12:01
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 13 años, 10 meses
Puntos: 638
Respuesta: paginas como post

WordPress muestra el contenido basado en un sistema de jerarquías, osea, si creas una página llamada, por ejemplo, Ventas, creas un archivo llamado page-ventas.php, entonces, cuando se llame esa página, se cargará este archivo en lugar de page.php, así con archive.php, tag.php, category.php, etc...

http://codex.wordpress.org/Template_Hierarchy

Entonces, teniendo claro cual es la página padre de todas las demás, puedes crear un archivo específico para ella, y ahí pones el código que quieras.

En este caso, necesitas el ID de la página padre para pasarlo en el parámetro child_of como te expliqué antes, a partir de ahí construyes todo lo demás.

Fíjate, aquí hay un ejemplo que te puede servir para lo que quieres, de hecho tengo la certeza de que es lo que tienes que hacer.

http://codex.wordpress.org/Function_...in_post_format

Saludos...
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #5 (permalink)  
Antiguo 22/05/2012, 13:35
 
Fecha de Ingreso: octubre-2011
Ubicación: bilbao
Mensajes: 218
Antigüedad: 7 años, 8 meses
Puntos: 28
Respuesta: paginas como post

he hecho la plantilla con la pagina page.php y le añadido el codigo que me digiste, que si, tiene toda la pinta de ser lo que estoy buscando, pero como dije no se practicamente nada de php y no se que parte de este tengo que editar. esto es lo que tengo:

Código PHP:
Ver original
  1. <?php
  2. /*
  3. Template Name: Biblioteca
  4. */
  5. ?>
  6. <?php get_header(); ?>
  7. <div id="main" class="wrap">
  8. <div id="mainwrap">
  9. <div id="content">
  10. <div id="contentpad">
  11. <div id="contentwrap">
  12. <?php if (is_front_page()) itx_sidebar('name=innertop');?>
  13. <?php if (have_posts()) : while (have_posts()){ the_post();itx_single_content('post singlepost');} ?>
  14. <?php else:itx_notfound();endif; ?>
  15. <div class="clear"></div>
  16. <?php if (is_front_page()) itx_sidebar('name=innerbottom');?>
  17. </div>
  18. </div>
  19. </div> <!--/content-->
  20. <?php itx_sidebar('name=sidebar&pos=left');itx_sidebar('name=sidebar&pos=right');?>
  21. <div class="clear"></div>
  22. <?php
  23.     $mypages = get_pages( array( '119' => $post->ID, 'sort_column' => 'post_date', 'sort_order' => 'desc' ) );
  24.     foreach( $mypages as $page ) {        
  25.         $content = $page->post_content;
  26.         if ( ! $content ) // Check for empty page
  27.             continue;
  28.         $content = apply_filters( 'the_content', $content );
  29.     ?>
  30.         <h2><a href="<?php echo get_page_link( $page->ID); ?>"><?php echo $page->post_title; ?></a></h2>
  31.         <div class="entry"><?php echo $content; ?></div>
  32.     <?php
  33.     }    
  34. ?>
  35. </div>
  36. </div> <!--/main-->
  37. <?php get_footer(); ?>

pense que tenia que cambiar donde pone ID por el ID de la pagina pero me dice que hay un erro de sintaxis (el dreamweaver) aique no se que tengo que editar si pudieran orientarme..

un saludo y muchas gracias de nuevo

Última edición por rogertm; 23/05/2012 a las 06:19
  #6 (permalink)  
Antiguo 23/05/2012, 06:52
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 13 años, 10 meses
Puntos: 638
Respuesta: paginas como post

Lo que pasa es que ese código debe estar dentro del Loop. Edité tu código, fíjate que cambié la estructura del while, antes era while() { ...} ahora es while() : ...endwhile; Además de arreglar un errorcillo que tenías, donde pones 199, va child_of, pues es un array bidimensional, llave => valor

Entonces, el código que tenías le hice un par de cambios, pruébalo a ver si funciona, espero que si:
Código PHP:
Ver original
  1. <?php if (have_posts()) :
  2.     while (have_posts()) :
  3.         the_post();
  4.         itx_single_content('post singlepost');
  5.        
  6.         $mypages = get_pages( array( 'child_of' => $post->ID, 'sort_column' => 'post_date', 'sort_order' => 'desc' ) );
  7.         foreach( $mypages as $page ) :        
  8.             $content = $page->post_excerpt;
  9.         ?>
  10.             <h2><a href="<?php echo get_page_link( $page->ID); ?>"><?php echo $page->post_title; ?></a></h2>
  11.             <div class="entry"><?php echo $content; ?></div>
  12.         <?php
  13.         endforeach;    
  14.    
  15.     endwhile;
  16. else:
  17.     itx_notfound();
  18. endif; ?>
También le di la indentación (sangrías) que lleva para que lo puedas ver y comprender mejor. Prueba y dime qué tal.

Saludos.
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose

Etiquetas: blog, plugin, post
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 22:21.