X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Вывод статей сеткой в Wordpress
Kodji
Kodji
Topic Starter сообщение 24.4.2012, 18:41; Ответить: Kodji
Сообщение #1


Вот такой вопрос, как вывести статьи как тут http://dimox.name/
Первая статья выводится как обычно, а остальные в виде сетки. Вот такой вопрос, как это сделать ?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
сообщение 24.4.2012, 18:55; Ответить: matroskin8
Сообщение #2


Например, используя мультицикл. Первым циклом выбирается последняя статья, вторым - все статьи, кроме последней.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Kodji
Kodji
Topic Starter сообщение 24.4.2012, 18:56; Ответить: Kodji
Сообщение #3


Чуть поподробнее если можно) Я в этом не особо разбераюсь
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
сообщение 24.4.2012, 20:48; Ответить: matroskin8
Сообщение #4


Пожалуйста - в документации описано все даже с примерами.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Kodji
Kodji
Topic Starter сообщение 25.4.2012, 14:45; Ответить: Kodji
Сообщение #5


Спасибо, но что то не могу всё не как разобраться
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
сообщение 25.4.2012, 18:48; Ответить: matroskin8
Сообщение #6


Могу порекомендовать бесплатный видеокурс по созданию темы WordPress, после которого, думаю, Вам станут более понятны подобные вопросы.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Kodji
Kodji
Topic Starter сообщение 26.4.2012, 22:33; Ответить: Kodji
Сообщение #7


Интересный курс, спасибо.
Но проблема вот в чем... как вывести последний пост я понял, а вот как вывести остальные без последнего ?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matroskin8
matroskin8
сообщение 26.4.2012, 23:14; Ответить: matroskin8
Сообщение #8


Я уже давал ссылку на документацию, где описан как раз этот пример. Приведу его оттуда со своими комментариями:

<?php $my_query = new WP_Query('category_name=featured&showposts=1'); // выбираем последнюю статью
  while ($my_query->have_posts()) : $my_query->the_post();
  $do_not_duplicate = $post->ID; // запоминаем id выбранной статьи ?>
    <!-- выводим статью с нужным форматированием... -->
  <?php endwhile; ?>
<!-- конец первого цикла -->

    <!-- второй цикл -->
  <?php if (have_posts()) : while (have_posts()) : the_post();
  if( $post->ID == $do_not_duplicate ) continue; update_post_caches($posts); // если попадается статья из первого цикла - пропускаем ее ?>
   <!-- вывод статей с форматированием сеткой -->
  <?php endwhile; endif; ?>


Это один из вариантов, который, правда, не лишен некоторых недостатков. Возможны еще варианты.
В общем, ничего сложного... вместо одного цикла запускаем 2, создавая для первого объект wp_query. Как на словах объяснить доступнее я даже и не знаю. Если нужен наглядный пример, то на сайте с приведенным выше курсом есть раздел Премиум, где публикуются уроки цикла "Работа с WordPress". В одном из уроков (который вскоре будет опубликован в разделе Премиум) по просьбе наших подписчиков я как раз и показываю как решается именно эта задача.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
denis_mw
denis_mw
сообщение 28.4.2012, 12:25; Ответить: denis_mw
Сообщение #9


автор блога http://dimox.name/ написал мне. Какой в итоге должен быть файл index.php, если сейчас такой: http://codepaste.ru/10277/. Заранее благодарю!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
c0ns0l3
c0ns0l3
сообщение 30.4.2012, 21:18; Ответить: c0ns0l3
Сообщение #10


Ребята, зачем вы ломаете себе голову вообще?
Откройте Кодекс, включаем мозг и смотрим в обжект wp_query!
Находим там встроенный обжект posts!
$wp_query->posts
И видим что? Видим масив постов, которые относятся к странице, на которой вы находитесь.
и Простой цикл.
foreach($wp_query->posts as $post_num=>$my_post) {
if($post_num!=0){
все посты кроме первого
}else{
первый пост
}
}

Забыл добавить.. my_post -> Object.. в котором все данные по посту увидите... воспользуйтесь print_r($my_post) или var_dump($my_post)

а лучше всего на сам wp_query --->>> своего рода дебаг... echo '<pre>'.print_r($wp_query).'</pre>';
Только если вы обращаетесь из ф-ции, не забудьте объявить переменную глобальной, а если хост хиленький - линкуйтесь на переменку... особенно если на лету будите ее изменять, т.к. кеш встроенный в ВП - хитрая штука...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Пакетное размещение статей по разным тематикам. Скидки!
35 kasey7 10647 26.3.2024, 15:47
автор: kasey7
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыПродам базу сайтов Wordpress в 16 миллионов доменов! Свежая сборка.
17 Boymaster 9774 17.3.2024, 2:53
автор: Boymaster
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыРучное размещение вечных ссылок и статей на хороших площадках
Опыт 10 лет!
419 leonidukg 273825 12.3.2024, 15:17
автор: leonidukg
Открытая тема (нет новых ответов) Перенос сайта на CMS Wordpress
8 freeax 4843 10.3.2024, 14:58
автор: freeax
Открытая тема (нет новых ответов) Как настроить в WordPress для SEO оптимизации
8 rownong27 2428 2.3.2024, 12:59
автор: toplinks


 



RSS Текстовая версия Сейчас: 28.3.2024, 18:58
Дизайн