[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: число записей на главной
redfox1986
Значит суть такова (сделать на главной странице / количество записей равное 3шт, на остальных страницах /page/2 ... /page/3 и т.д оставить прежнее число записей 10) Сайт на wordpress переискав весь интернет ничего дельного ненашел. Тема у меня не стандартная главная страница home.php так что все те варианты которые были в инете я перепробывал. Вот тот кусок home.php который как мне кажется надо дополнить

<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
?>


aggregate_homepage_posts - это можно менять из админки число записей но оно будет относится ко всем страницам

также коды файла home.php


<?php get_header(); ?>

<?php
if ( is_home() && get_option('aggregate_featured') == 'on' ) include(TEMPLATEPATH . '/includes/featured.php'); ?>

<?php
if ( is_active_sidebar( 'homepage-recentfrom-area-1' ) || is_active_sidebar( 'homepage-recentfrom-area-2' ) || is_active_sidebar( 'homepage-recentfrom-area-3' ) ) { ?>
<?php
if ( is_active_sidebar( 'homepage-recentfrom-area-1' ) && !dynamic_sidebar('homepage-recentfrom-area-1') ) : ?>
<?php
endif; ?>

<?php
if ( is_active_sidebar( 'homepage-recentfrom-area-2' ) && !dynamic_sidebar('homepage-recentfrom-area-2') ) : ?>
<?php
endif; ?>

<?php
if ( is_active_sidebar( 'homepage-recentfrom-area-3' ) && !dynamic_sidebar('homepage-recentfrom-area-3') ) : ?>
<?php
endif; ?>

<div class="clear"></div>
<?php } ?>

<div id="main-content" class="clearfix">
<
div id="left-area">
<
h4 class="main-title"><?php _e('Most Recent Articles','Aggregate'); ?></h4>
<
div id="entries">

<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
?>

<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
include(TEMPLATEPATH . '/includes/entry.php'); ?>
<?php
endwhile; ?>
<?php
if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
else { ?>
<?php
include(TEMPLATEPATH . '/includes/navigation.php'); ?>
<?php
} ?>


<?
$pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<?
if(is_front_page() & $pageNumber == "1") : ?>
<!-- begin wiget news -->

<
div>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar("News") ) : ?>
<?php
endif; ?>
</div>
<!--
end wiget news -->
<?php endif; ?>


<?php
else : ?>
<?php
include(TEMPLATEPATH . '/includes/no-results.php'); ?>
<?php
endif; wp_reset_query(); ?>
</div> <!-- end #entries -->
</div> <!-- end #left-area -->

<?php if ( is_active_sidebar( 'homepage-sidebar' ) ) { ?>
<div id="sidebar">
<?php if ( !dynamic_sidebar('homepage-sidebar') ) : ?>
<?php
endif; ?>
</div> <!-- #sidebar -->
<?php } else { ?>
<?php
get_sidebar(); ?>
<?php
} ?>
<?php
get_footer(); ?>


также файл entry.php который вызывается в цикле


<?php
$i++;
$et_is_latest_post = $paged == 0 && ( !is_home() || ( is_home() && $i <= 2 ) );
?>
<div id="bgentry" class="post entry clearfix<?php if ( $et_is_latest_post ) echo ' latest'; ?>">





<?php
$thumb = '';
$width = $et_is_latest_post ? 130 : 67;
$height = $et_is_latest_post ? 130 : 67;
$classtext = 'post-thumb';
$titletext = get_the_title();
$thumbnail = get_thumbnail($width,$height,$classtext,$titletext,$titletext,false,'Entry');
$thumb = $thumbnail["thumb"];
?>

<?php
if($thumb <> '' && get_option('aggregate_thumbnails_index') == 'on') { ?>
<div class="thumb">
<
a href="<?php the_permalink(); ?>">
<?php print_thumbnail($thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, $classtext); ?>
<span class="overlay"></span>
</
a>
</
div> <!-- end .post-thumbnail -->
<?php } ?>

<h3 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
<?php include(TEMPLATEPATH . '/includes/postinfo.php'); ?>

<?php
if (get_option('aggregate_blog_style') == 'on') the_content(''); else { ?>
<?php

$et_excerpt_length = $et_is_latest_post && is_home() ? 430 : 500;
if ( !is_home() ) $et_excerpt_length = 600;
?>
<p><?php truncate_post($et_excerpt_length); ?></p>
<?php }; ?>

<div class="alignleft" ><p><img title="Метки" src="/wp-includes/images/ico/tags.png"/>&nbsp<a><?php the_tags('') ?> </a></p></div>

<
a href="<?php the_permalink(); ?>" class="more"><span><?php _e('Read More','Aggregate'); ?></span></a></br></br>
<
div id="bottom-stitch1"></div>
</
div> <!-- end .post-->


вроде все основные файлы коды которые, как я полагаю, могут влиять на отображение числа записей я разместил. Если чтото еще забыл пишите... Уважаемые профи, бывалые форума...Помогите разобраться с моей задачей ((( как я понял надо дописать в первый кусок моего кода чтото вроде (если сейчас страница 1 то отображать 3 последнии записи блога, при других условиях get_option('aggregate_homepage_posts') ), это я так понял...но вот незнаю как это написать на языке php и куда именно поставить. Благодарю всех откликнувшихся



Спустя 10 минут, 22 секунды (25.08.2012 - 01:44) DarkGuy написал(а):
т.е. тебе по 3 записи выводить надо все остальные Страница 1 из ???» так?
гугл выдал
http://wordpress.org/extend/plugins/wp-pagenavi/

или если понять по другому

if($_GET['page_id'] == 'x')
//где x -id главной
{ }
else
{}


четче объясни проблему.

Спустя 1 минута, 43 секунды (25.08.2012 - 01:46) DarkGuy написал(а):
почитай про
if
else
elseif/else if

Спустя 24 минуты, 38 секунд (25.08.2012 - 02:11) redfox1986 написал(а):
У меня есть название_сайта.ру загружается home.php в нем щяс на странице 10 последних записей моих, под последней записью номерация страниц от 1 до 38 если нажасть на 38 то будет мой_сайт.ру/page/38

мне надо чтобы на мой_сайт.ру выводилось 3 последних поста после стояла нумерация, но когда я нажимаю на страницу 2 то на ней отображалось последнии 10 постов (за минусом тех которые на странице 1 тоесть мой_сайт.ру)


тоесть проще говоря шаблон home.php у меня идет на главную и на страницу 2 3 4 5 и т.д, и выводит по 10 записей на странице, походу надо написать какоето условие чтобы на 1 странице он выводил только 3 записи а на других стандартно как в админке...а вот где это условие поставить и как написать немогу понять

Добавлю что я в php особо неразбираюсь и незнаю функций, и для меня if esle и т.д темный лес ((

Спустя 1 день, 10 часов, 56 минут, 57 секунд (26.08.2012 - 13:08) DarkGuy написал(а):
Цитата (redfox1986 @ 25.08.2012 - 00:11)
У меня есть название_сайта.ру загружается home.php в нем щяс на странице 10 последних записей моих, под последней записью номерация страниц от 1 до 38 если нажасть на 38 то будет мой_сайт.ру/page/38

мне надо чтобы на мой_сайт.ру выводилось 3 последних поста после стояла нумерация, но когда я нажимаю на страницу 2 то на ней отображалось последнии 10 постов (за минусом тех которые на странице 1 тоесть мой_сайт.ру)


тоесть проще говоря шаблон home.php у меня идет на главную и на страницу 2 3 4 5 и т.д, и выводит по 10 записей на странице, походу надо написать какоето условие чтобы на 1 странице он выводил только 3 записи а на других стандартно как в админке...а вот где это условие поставить и как написать немогу понять

Добавлю что я в php особо неразбираюсь и незнаю функций, и для меня if esle и т.д темный лес ((

адрес сайта в студию.

Спустя 19 минут, 32 секунды (26.08.2012 - 13:27) redfox1986 написал(а):
скинул в ЛС

Спустя 31 минута, 25 секунд (26.08.2012 - 13:59) DarkGuy написал(а):
<?php
if($_SERVER['REQUEST_URI'] == 'http://o*.ru/')
{$ifdg = 3;
//где i число записей на главной}
else
{ $ifdg = 10;
//где i число записей в остальных случаях}
?>


$ifdg = прописываете как число в get_option('aggregate_homepage_posts')


http://o*.ru/-< ваш адрес сайта

в общем как-то так

идея ясна?

Спустя 5 минут, 54 секунды (26.08.2012 - 14:05) redfox1986 написал(а):
а в какой кусок кода мне засунуть этот код ?

<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

query_posts($args);
global $paged;
$i = 0;

?>



<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
include(TEMPLATEPATH . '/includes/entry.php'); ?>
<?php
endwhile; ?>
<?php
if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
else { ?>
<?php
include(TEMPLATEPATH . '/includes/navigation.php'); ?>
<?php
} ?>

Спустя 3 минуты, 16 секунд (26.08.2012 - 14:08) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 12:05)
а в какой кусок кода мне засунуть этот код ?

<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

query_posts($args);
global $paged;
$i = 0;

?>



<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
include(TEMPLATEPATH . '/includes/entry.php'); ?>
<?php
endwhile; ?>
<?php
if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
else { ?>
<?php
include(TEMPLATEPATH . '/includes/navigation.php'); ?>
<?php
} ?>

перед
<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

query_posts($args);
global $paged;
$i = 0;

?>


Но после всяких
 <?php get_header(); ?>

Спустя 20 минут, 11 секунд (26.08.2012 - 14:28) redfox1986 написал(а):
ругается Parse error: syntax error, unexpected T_ELSE in .../home.php on line 45


Как я понял за вывод числа записей влияет вот этот кусок

<?php
$args=array(
'showposts'=>get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

query_posts($args);
global $paged;
$i = 0;

?>


из этого кода тама есть типо опции get_option('aggregate_homepage_posts') и get_option('aggregate_exlcats_recent') и get_option('aggregate_duplicate') как я понял что их управление у меня в админке, тоесть я задаю в админке темы какоето значение в 10 записей и оно меняется.

В нете нашел пару кодов которые возможно подайдут в тот кусок но их както надо наверно совместить и дописать

вот в этот код я поместил виджет и он отображается только на 1 странице

<?$pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1;  ?>
<?
if(is_front_page() & $pageNumber == "1") : ?>
<!-- begin wiget news -->

<
div>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar("News") ) : ?>
<?php
endif; ?>
</div>
<!--
end wiget news -->
<?php endif; ?>


а вот что нашел в инете, както связанно тоже с выводом записей на странице

<?php $numpost=10;//сколько записей на одной странице нам надо вывести
if($paged>1) $offset=$numpost*($paged-1);
else $offset=0;//чтобы знать, с какой статьи начать, если это не первая страница
query_posts('cat=1&offset='.$offset.'&showposts='.$numpost); ?>
<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>

Спустя 6 минут, 8 секунд (26.08.2012 - 14:34) KOPOJI написал(а):
Цитата
ругается Parse error: syntax error, unexpected T_ELSE in .../home.php on line 45

значит else стоит не там, где нужен. либо блок if-а раньше заканчивается, и после него еще что то написано либо вы вообще не написав if сразу написали else, либо где то не там закрыли скобку, либо ... короче можно практически бесконечно гадать без кода

Спустя 1 минута, 41 секунда (26.08.2012 - 14:36) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 12:28)
ругается Parse error: syntax error, unexpected T_ELSE in .../home.php on line 45


Как я понял за вывод числа записей влияет вот этот кусок

<?php
    $args=array(
    'showposts'=>get_option('aggregate_homepage_posts'),
    'paged'=>$paged,
    'category__not_in' => get_option('aggregate_exlcats_recent'),
    );

    if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

    query_posts($args);
    global $paged;
    $i = 0;

  ?>


из этого кода тама есть типо опции get_option('aggregate_homepage_posts') и get_option('aggregate_exlcats_recent') и get_option('aggregate_duplicate') как я понял что их управление у меня в админке, тоесть я задаю в админке темы какоето значение в 10 записей и оно меняется.

В нете нашел пару кодов которые возможно подайдут в тот кусок но их както надо наверно совместить и дописать

вот в этот код я поместил виджет и он отображается только на 1 странице

<?$pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1;  ?>
<?
if(is_front_page() & $pageNumber == "1") : ?>
<!-- begin wiget news -->

<
div>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar("News") ) : ?>
<?php
endif; ?>
</div>
<!--
end wiget news -->
<?php endif; ?>


а вот что нашел в инете, както связанно тоже с выводом записей на странице

<?php $numpost=10;//сколько записей на одной странице нам надо вывести
if($paged>1) $offset=$numpost*($paged-1);
else $offset=0;//чтобы знать, с какой статьи начать, если это не первая страница
query_posts('cat=1&offset='.$offset.'&showposts='.$numpost); ?>
<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>

что конкретно находиться на строке 45

Спустя 1 минута, 58 секунд (26.08.2012 - 14:38) DarkGuy написал(а):
else
{ $ifdg = 10;} вот твоя ошибка
вместо
else
{ $ifdg = 10;

Спустя 48 секунд (26.08.2012 - 14:39) DarkGuy написал(а):
или
<?php 
if($_SERVER['REQUEST_URI'] == 'http://o*.ru/')
{$numpost=3;}
else
{ $numpost=10;}

if($paged>1) $offset=$numpost*($paged-1);
else $offset=0;//чтобы знать, с какой статьи начать, если это не первая страница
query_posts('cat=1&offset='.$offset.'&showposts='.$numpost); ?>
<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>

Спустя 6 минут, 57 секунд (26.08.2012 - 14:45) KOPOJI написал(а):
и в чем же там ошибка? нормальные условия.

Спустя 1 минута, 10 секунд (26.08.2012 - 14:47) DarkGuy написал(а):
Цитата (KOPOJI @ 26.08.2012 - 12:45)
и в чем же там ошибка? нормальные условия.

} закрывающая не стояла

Спустя 46 секунд (26.08.2012 - 14:47) KOPOJI написал(а):
if (условие 1) действие 1;
else действие 2;

если одно действие - тоже самое что и
if (условие 1) {
действие 1;
}
else {
действие 2
}
только короче

Спустя 1 минута, 15 секунд (26.08.2012 - 14:49) redfox1986 написал(а):
исправил, и попробывал все 2 варианта, ошибок не выдает но ничего непоменялось (

если поменять вот эту строку

'showposts'=>get_option('aggregate_homepage_posts'),


на такую

'showposts'=>3,


то будет выводится по 3 новости но на всех страницах

Спустя 2 минуты, 25 секунд (26.08.2012 - 14:51) DarkGuy написал(а):
Цитата (KOPOJI @ 26.08.2012 - 12:47)
if (условие 1) действие 1;
else действие 2;

если одно действие - тоже самое что и
if (условие 1) {
действие 1;
}
else {
действие 2
}
только короче

согласен
Просто я прописал
else {
действие 2

А человек не исправил

Спустя 21 секунда (26.08.2012 - 14:51) KOPOJI написал(а):
а что у вас возвращает функция get_option?
пропишите
var_dump(get_option('aggregate_homepage_posts'));

Спустя 2 минуты, 2 секунды (26.08.2012 - 14:53) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 12:49)
исправил, и попробывал все 2 варианта, ошибок не выдает но ничего непоменялось (

если поменять вот эту строку

<pre class="sh_sourceCode" rel="php"><span class="sh_string">'showposts'</span><span class="sh_symbol">=></span><span class="sh_function">get_option</span><span class="sh_symbol">(</span><span class="sh_string">'aggregate_homepage_posts'</span><span class="sh_symbol">),</span></pre>

на такую

<pre class="sh_sourceCode" rel="php"><span class="sh_string">'showposts'</span><span class="sh_symbol">=></span><span class="sh_number">3</span><span class="sh_symbol">,</span></pre>

то будет выводится по 3 новости но на всех страницах

'showposts'=>$ifdg,

я писал про это

при условии что стоит

<?php
if($_SERVER['REQUEST_URI'] == 'http://o*.ru/')
{$ifdg = 3;
//где i число записей на главной}
else
{ $ifdg = 10;
//где i число записей в остальных случаях
}
?>

Спустя 53 секунды (26.08.2012 - 14:54) DarkGuy написал(а):
Цитата (KOPOJI @ 26.08.2012 - 12:51)
а что у вас возвращает функция get_option?
пропишите
var_dump(get_option('aggregate_homepage_posts'));

число возвращает.

Спустя 5 минут, 17 секунд (26.08.2012 - 15:00) redfox1986 написал(а):
вот и так написал задумку даже понял, но всеравно на главной почемуто продолжают висеть 10 последних записей (


<?php
if($_SERVER['REQUEST_URI'] == 'http://o*.ru/')
{$ifdg = 3;}
else
{ $ifdg = 10;}
?>
<?php

$args=array(
'showposts'=>$ifdg,
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;

query_posts($args);
global $paged;
$i = 0;
?>

<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
include(TEMPLATEPATH . '/includes/entry.php'); ?>
<?php
endwhile; ?>
<?php
if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
else { ?>
<?php
include(TEMPLATEPATH . '/includes/navigation.php'); ?>
<?php
} ?>

Спустя 4 минуты, 21 секунда (26.08.2012 - 15:04) DarkGuy написал(а):
пропиши
print_r($args);

echo $ifdg;

echo $_SERVER['REQUEST_URI'];
и скинь результат сюда

Спустя 1 час, 2 минуты, 35 секунд (26.08.2012 - 16:07) redfox1986 написал(а):
подскажи а где именно прописать? в какой части кода ?

вот это должно получится ?

Array ( [showposts] =>10 [paged] => 0 [category__not_in] => ) 10/

Спустя 49 минут, 58 секунд (26.08.2012 - 16:57) redfox1986 написал(а):
вот щяс поставил так код

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$ifdg = 3;}
else
{ $ifdg = 10;}
?>




<?php

$args=array(
'showposts'=> $ifdg,


после чего на страницах стало отображатся по 3 записи, на всех страницах

как первому if добавить вот эту строчку ?
<?if(is_front_page() & $pageNumber == "1") : ?>


тоесть если этот код мне помог спрятать виджет только на 1 странице вот код

<?$pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1;  ?>
<?
if(is_front_page() & $pageNumber == "1") : ?>


предполагаю что этот код поможет в моем условии, токак как совместить этот код в один if чтобы получить примерно вот так

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
<?if(is_front_page() & $pageNumber == "1") : ?>
{$ifdg = 3;}
else
{ $ifdg = 10;}
?>

Спустя 40 минут, 38 секунд (26.08.2012 - 17:37) redfox1986 написал(а):
матодом научного тыка я всетаки сделал чтобы на главной было 3 новости а на остальных по 10

вот код

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$ifdg = 3;}
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 0 )
{ $ifdg = 10;}
?>




<?php

$args=array(
'showposts'=> $ifdg,
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
print_r($args);

echo $ifdg;

echo $_SERVER['REQUEST_URI'];
?>


но щяс появилась другая проблемма, теперь навигация страниц выросла на главной, тоесть когда было 10 новостей страниц было 1...38, щяс на главной весит 3 последнии новости но навигация по страницам отображает 1...127, если перети на страницу большее 38ой то сайт покажет что такая ненайдена страница, но если перети на страницу до 38 то навигация становится нормальной

Спустя 7 минут, 59 секунд (26.08.2012 - 17:45) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 15:37)
матодом научного тыка я всетаки сделал чтобы на главной было 3 новости а на остальных по 10

вот код

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$ifdg = 3;}
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 0 )
{ $ifdg = 10;}
?>




<?php

$args=array(
'showposts'=> $ifdg,
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
print_r($args);

echo $ifdg;

echo $_SERVER['REQUEST_URI'];
?>


но щяс появилась другая проблемма, теперь навигация страниц выросла на главной, тоесть когда было 10 новостей страниц было 1...38, щяс на главной весит 3 последнии новости но навигация по страницам отображает 1...127, если перети на страницу большее 38ой то сайт покажет что такая ненайдена страница, но если перети на страницу до 38 то навигация становится нормальной

что является вполне логичным, ибо общее количество делиться на количество выводимых.

Спустя 28 минут, 34 секунды (26.08.2012 - 18:14) redfox1986 написал(а):
надеюсь я правильно методом научного тыка сделал код ?

Спустя 18 минут, 49 секунд (26.08.2012 - 18:33) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 16:14)
надеюсь я правильно методом научного тыка сделал код ?

Вполне!
Поздравляю

Спустя 1 минута, 53 секунды (26.08.2012 - 18:34) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 16:14)
надеюсь я правильно методом научного тыка сделал код ?

только я сделал как-нибудь так:

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$ifdg = 3;}
else
{ $ifdg = 10;}

$args=array(
'showposts'=> $ifdg,
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
print_r($args);

echo $ifdg;

echo $_SERVER['REQUEST_URI'];
?>

Спустя 33 секунды (26.08.2012 - 18:35) DarkGuy написал(а):
хотя принципиальной разницы нет

Спустя 1 час, 19 минут, 16 секунд (26.08.2012 - 19:54) redfox1986 написал(а):
если оставить else тогда почемуто 10 записей везде остается...Все равно большое Спасибо, без вас бы недадумал ничего )

Спустя 3 часа, 52 минуты (26.08.2012 - 23:46) DarkGuy написал(а):
Цитата (redfox1986 @ 26.08.2012 - 17:54)
если оставить else тогда почемуто 10 записей везде остается...Все равно большое Спасибо, без вас бы недадумал ничего )

забавно=) видимо где-то я ошибся .
Всегда пожалуйста=)
Если помог + в карму

Спустя 2 дня, 14 часов, 7 минут, 42 секунды (29.08.2012 - 13:54) redfox1986 написал(а):
так вот сегодня обнаружил такой баг если открыть страницу http://o*.ru, то выводится как я хотел 2 новости последние но показывается в навигации страниц 190 страниц(тоесть навигация считает что новости поделились), если открываю страницу 2 http://o*.ru/page/2 тогда выводются 10 новостей НО с 11 по 20, тоесть новости с 3 по 10 невыводются, если открыть страницу http://o*.ru/page/1 то выводются 10 новостей с 1 по 10, и страниц показано 38. Думаю открыть вопрос опять...

Задача все така вывести на главной 2 новости, но на 2рой странице вывести новости с 3 по 12

Спустя 1 час, 56 минут, 54 секунды (29.08.2012 - 15:51) redfox1986 написал(а):
порыскав еще интернет сделал так, мой код был

<?php
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$ifdg = 2;}
if($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 0 )
{ $ifdg = 10;}
?>
<?php

$args=array(
'showposts'=> $ifdg,
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
?>
<?php
if (have_posts()) : while (have_posts()) : the_post(); ?>


все это заменил на

<?php $top_query = new WP_Query('showposts=3'); ?>
<?php
if(have_posts()) : ?>
<?php
while($top_query->have_posts()) : $top_query->the_post(); $first_post = $post->ID; ?>


в итоге у меня на первой странице вывелось последнии 3 новости, нумерация страниц неувеличалась и осталось 39, но на 2рой и последующих страницах также висят 3 последнии новости

Спустя 52 минуты, 40 секунд (29.08.2012 - 16:44) redfox1986 написал(а):
вот еще вывел код но тоже немного нерабочий...

			<?php
$args=array(
'showposts'=> get_option('aggregate_homepage_posts'),
'paged'=>$paged,
'category__not_in' => get_option('aggregate_exlcats_recent'),
);

if (get_option('aggregate_duplicate') == 'false') $args['post__not_in'] = $ids;
query_posts($args);
global $paged;
$i = 0;
?>

<?php

if ($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{$top_query = new WP_Query('showposts=3');
}
if ($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 0)
{$top_query = new WP_Query('showposts=10');
}
?>

<?php
if (have_posts()) : while ($top_query->have_posts()) : $top_query->the_post(); ?>


1 страница (главная), отображаются 3 новости (последнии), число страниц нормлаьное 39, если нажать на 2рую 3ую и последующие страницы то на них будет 10 новостей последних на любой из страниц...незнаю как доделать

Спустя 8 часов, 20 минут, 6 секунд (30.08.2012 - 01:04) redfox1986 написал(а):
вот еще нашел код, он гараздо меньше но всеравно недоработанный (

<?php

if(is_home() & $pageNumber == "1")
{
query_posts($query_string . 'showposts=3');
}
if(is_front_page() )
{
query_posts($query_string . 'showposts=10');
}
?>




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

Спустя 13 часов, 7 минут, 55 секунд (30.08.2012 - 14:12) redfox1986 написал(а):
вобщем с горем попалам решил вопрос но пока незнаю багов и глюков надуюсь их небудет выкладываю код


Код:
<?php
if ($pageNumber = (get_query_var('paged')) ? get_query_var('paged') : 1)
{
$top_query = new WP_Query($query_string . 'showposts=3');
}
if(is_front_page() & $pageNumber == "1")
{
$top_query = new WP_Query($query_string . 'showposts=10');
}
?>

<?php
if (have_posts()) : while ($top_query->have_posts()) : $top_query->the_post(); ?>


При этом я установил плагин Different Posts Per Page 1.8.1, Home=3
, pages=10

D в теме число записей на страницу=10(в админке)

Вот всеравно меня сам код смущяет, может есть у кого идеи по его сокращению ?

При этом на главной странице у меня выводются 3 записи, навигация с 1 по 39 страницу, на 2рой странице выводются записи с 4 по 13
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.