Cómo mostrar solo 10 entradas en la página principal?

Desde
26 Abr 2013
Mensajes
1.238
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Hola nuevamente,


Tengo en mi blog activada la opción de que en la pagina principal aparezcan todas las entradas, desde la Wordpress / ajustes / lectura, puedo poner que el numero de entradas visible en la página principal sea de 1 o de 100, a mi gusto.

Mi idea es reducir el numero de entradas en esta página principal a 10, desde ajustes / lectura, pero si lo hago, se me limita también el numero de entradas en todas las demás páginas del blog, algo que no quiero.

Me gustaría limitar el numero de entradas EXCLUSIVAMENTE en la pagina de inicio (principal).

Alguien sabe si esto es posible y como puedo hacerlo? el blog en cuestión es Todo sobre la Marihuana - Notas de Humo


Gracias!!
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
si se puede podrias poner una query personalizada en el index.php de tu wordpress
 

Josetxo

Dseda
Desde
26 Abr 2013
Mensajes
1.238
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
si se puede podrias poner una query personalizada en el index.php de tu wordpress

Gracias por tu respuesta memoadian,

Soy novato con esto de modificar cosas del WP, podrías ayudarme a hacerlo por favor? se editar el index.php a través de ftp pero no se que debo tocar dentro.

Saludos
 

Chapi

Delta
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Ago 2011
Mensajes
618
Como te dicen, debes modificar el archivo home.php del theme que estas usando (si no existe lo creas copiando y pegando el contenido de index.php) y hacer una custom query.

Tambien deberias agregar un link al archive para que los visitantes tengan acceso al listado completo de notas.

Para lo de limitar los posts, en tu home.php justo antes del loop principal (donde se listan los post), pones esto:

PHP:
query_posts(array(
    'showposts' => 5,
));

Deberia quedarte algo similar a esto:

PHP:
<?php
    query_posts(array(
        'showposts' => 5,
    ));
?>
<?php if ( have_posts() ) : ?>

    <?php while ( have_posts() ) : the_post(); ?>

        <?php get_template_part('content', 'booklisting'); ?>

    <?php endwhile; ?>

    <div class="clear"></div>

<?php enif; ?>
 
Última edición:

Josetxo

Dseda
Desde
26 Abr 2013
Mensajes
1.238
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Class Reference/WP Query « WordPress Codex

en ese link explican todo con respecto a las querys de wordpress, dale una leída y tendrás más que suficiente :)

Muchas gracias por tu respuesta, estoy ojeando la pagina pero no tengo ni idea de ingles, así que con la ayuda de google translate estoy intentando aprender algo pero creo que las traducciones no son completamente buenas y me estoy liando mas que aprender, voy a buscar tutoriales en español a ver si tengo suerte.


Como te dicen, debes modificar el archivo home.php del theme que estas usando (si no existe lo creas copiando y pegando el contenido de index.php) y hacer una custom query.

Tambien deberias agregar un link al archive para que los visitantes tengan acceso al listado completo de notas.

Para lo de limitar los posts, en tu home.php justo antes del loop principal (donde se listan los post), pones esto:

PHP:
query_posts(array(
    'showposts' => 5,
));

Deberia quedarte algo similar a esto:

PHP:
<?php
    query_posts(array(
        'showposts' => 5,
    ));
?>
<?php if ( have_posts() ) : ?>

    <?php while ( have_posts() ) : the_post(); ?>

        <?php get_template_part('content', 'booklisting'); ?>

    <?php endwhile; ?>

    <div class="clear"></div>

<?php enif; ?>


Gracias también por tu respuesta y explicación, no tenia archivo home.php por lo que he creado uno incluyendo el mismo contenido que index.php, he puesto al inicio el código que me indicas y lo he guardado dentro del theme.

No pretendo abusar o que me lo den todo echo, pero al no tener conocimiento de esto me lio y mucho.... mucho. ¿Podrías indicarme que es una qustom query o como hacerla?
Tampoco comprendo eso de agregar un link al archive, ¿que archivo?

Saludos y gracias por vuestro tiempo
 

Chapi

Delta
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Ago 2011
Mensajes
618
No lo debes agregar al pincipio del archivo, debes agregar esto:

PHP:
<?php 
query_posts(array(
    'showposts' => 5,
));
?>

justo antes de donde encuentres algo como esto en el codigo de tu index.php (que ahora lo tienes en home.php)
PHP:
<?php if ( have_posts() ) : ?>

Y lo del archive, me refiero al "archive" del blog, el listado de notas, no a un archivo en si.

Si quieres pon el codigo que haz copiado del index.php aqui y te digo como editarlo.
 

Josetxo

Dseda
Desde
26 Abr 2013
Mensajes
1.238
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Gracias :), aquí va lo que hice, aunque ya lo he guardado como home.php y no he notado cambios en la pagina principal aun

query_posts(array(
****'showposts'*=>*5,
));*


<?php
/**
* The main template file.
*
* This is the most generic template file in a WordPress theme
* and one of the two required files for a theme (the other being style.css).
* It is used to display a page when nothing more specific matches a query.
* E.g., it puts together the home page when no home.php file exists.
* Learn more: Template Hierarchy « WordPress Codex
*
* @package Graphene
* @since Graphene 1.0
*/
global $graphene_settings;
get_header(); ?>

<div class="entries-wrapper">
<?php
do_action('graphene_index_pre_loop');

/* Run the loop to output the posts.
* If you want to overload this in a child theme then include a file
* called loop-index.php and that will be used instead.
*/
while ( have_posts() ) {
the_post();
get_template_part( 'loop', 'index' );
}
?>
</div>

<?php graphene_posts_nav(); ?>

<?php get_footer(); ?>
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
Esos cambios se hacen en el index.php cuando el amigo dijo home, se refería a ese archivo.

una wp_query custom es un consulta a la base de datos para traer cierto tipo de posts, con varios indicadores.

puedes decirle cuantos mostrar, de que fecha, si son posts, páginas, custom_posts_types, puedes decirle a partir de cual quieres que te muestre, que categoria, etc. etc. etc.
 

Chapi

Delta
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Ago 2011
Mensajes
618
Esos cambios se hacen en el index.php cuando el amigo dijo home, se refería a ese archivo.

una wp_query custom es un consulta a la base de datos para traer cierto tipo de posts, con varios indicadores.

puedes decirle cuantos mostrar, de que fecha, si son posts, páginas, custom_posts_types, puedes decirle a partir de cual quieres que te muestre, que categoria, etc. etc. etc.

No confundas por favor.

[MENTION=43203]Josetxo[/MENTION]
Cuando dije home.php me referia a home.php y esta bien que hayas copiado el index.php a un nuevo archivo llamado home.php
Si solo modificas el index.php es posible que tambien termines modificando otras partes de tu blog (segun la estructura de tu theme).
Creando el archivo home.php y copiando el contenido del index.php al mismo, te aseguras que luego las modificaciones que hagas en home.php solo repercutan en la pagina de inicio de tu blog.

Ahora, asi con esas modificaciones que hiciste nunca vas a ver ningun cambio porque estan mal.
Pon esto en tu home.php:


PHP:
<?php
/**
* The main template file.
*
* This is the most generic template file in a WordPress theme
* and one of the two required files for a theme (the other being style.css).
* It is used to display a page when nothing more specific matches a query.
* E.g., it puts together the home page when no home.php file exists.
* Learn more: Template Hierarchy « WordPress Codex
*
* @package Graphene
* @since Graphene 1.0
*/
global $graphene_settings;
get_header(); ?>

<div class="entries-wrapper">
<?php
do_action('graphene_index_pre_loop');

/* Run the loop to output the posts.
* If you want to overload this in a child theme then include a file
* called loop-index.php and that will be used instead.
*/
 
query_posts(array(
    'showposts' => 5,
));

while ( have_posts() ) {
the_post();
get_template_part( 'loop', 'index' );
}
?>
</div>

<?php graphene_posts_nav(); ?>

<?php get_footer(); ?>

Ahi deberias ver el cambio.
Ojo que tienes activado el plugin wp super cache, si estas con la configuracion normal cuando estes conectado como admin al sitio deberias ver los cambios.
Cuando te desloguees vas a ver lo anterior hasta que se actualice el archivo de cache, si quieres puedes borrar la cache para que tenga efecto instantaneo para todo el mundo.
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
No confundas por favor.

No era mi intención confundir, pero el home suele no estar en los templates y se toma el index como home.

En la estructura del archivo se nota que usa un loop.php, dudo que eso afecte a otros archivos del theme, si solo esta modificando la query.

Si tiene el index.php y el home.php exactamente iguales no le veo sentido tener dos.

Pero bueno.
 

Chapi

Delta
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Ago 2011
Mensajes
618
El index.php va a quedar sin modificar, el home.php va a quedar modificado con el limite que el quiere poner.

El index.php es el templete que usan todos los template de fallback en ultima instancia, por lo que si su theme utiliza el index.php para mostrar el archive o cualquier otra seccion de su pagina entonces modificar el index.php termina repecutiendo en otros lugares. Por eso aclare que es segun la estructura de su theme, como no la conozco es mejor prevenir y crear el archivo home.php y ahi hacer la modificacion.
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
Tienes razón en ese aspecto, pero vamos, si un theme usa el index para mostrar el archive, pfff.
 

Josetxo

Dseda
Desde
26 Abr 2013
Mensajes
1.238
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Gracias amigos por vuestra ayuda, se agradece de corazón :p8:

Estoy trabajando, en cuanto termine y llegue a casa probare con las instrucciones que me estáis dando y os cuento si finalmente lo conseguí

---------- Post agregado el 22-ago-2013 hora: 15:37 ----------

Bueno, comentaros que todo salio genial (hice lo del home.php para evitar líos).

Muchas gracias por su ayuda, ahora soy mas feliz ;) se lo agradezco mucho :)
 

Chapi

Delta
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
2 Ago 2011
Mensajes
618
No hay de que, me alegro que te haya funcionado.
 
Arriba