2016-07-26 6 views
0

На моей главной странице я хочу отображать страницы, но с альтернативными размерами эскизов. У меня есть два размера миниатюр, которые следует использовать.
Страница 1: Размер A
Страница 2: Размер B
Страница 3: Размер A
Страница 4: Размер A
Страница 5: Размер A
Страница 6: Размер B
Страница 7: Размер A
затем начните сначала с заказа.Страницы страниц WordPress, чередующиеся с миниатюрами

На данный момент, я получил следующий код, который я хочу, чтобы повторно использовать на других страницах сайта, чтобы отобразить дочерние страницы:

<?php query_posts('post_type=page&order=ASC&post_parent=0'); 
while(have_posts()) : the_post(); ?> 
    <a href="<?php the_permalink() ?>"> 
     <?php the_post_thumbnail(); ?> 
     <?php the_title(); ?> 
    </a> 
<?php endwhile;?> 

Спасибо за вашу помощь.

ответ

0

Это зависит от того, как вы решаете, какой подход выбрать. Что касается порядка вашего шаблона, было бы целесообразно сделать это через css. Wordpress также выводит изменяющиеся классы, такие как even и odd, но поскольку у вас есть три следующих (A A A), это неправильный подход. Я думаю, что проще всего, если вы используете CSS и сделать нас п-го-о-типа (INT):

/* First Post Type A */ 
.your-post-type:first-child { 

} 
/* Second Post Type B*/ 
.your-post-type:nth-of-type(2) { 

} 
/* Third Post Type A */ 
.your-post-type:nth-of-type(3) { 

} 
/* Fourth Post Type A */ 
.your-post-type:nth-of-type(4) { 

} 
/* Fifth Post Type A */ 
.your-post-type:nth-of-type(5) { 

} 
/* Sixth Post Type B */ 
.your-post-type:nth-of-type(6) { 

} 
/* Seventh Post Type A */ 
.your-post-type:nth-of-type(7) { 

} 

Если ваш пользовательский запрос на главной странице не ограничено 7, а затем вы должны продлить этот пример до 14 или сколько сообщений у вас есть и вы хотите показать. Ограничить запрос с последним аргументом shotposts=X:

<?php query_posts('post_type=page&order=ASC&post_parent=0&showposts=14').. 
+0

Большой намек. Я сделал это с помощью css и положил большой палец как фоновое изображение. – Irene

+0

Это ужасное решение ... За сообщениями 'n' вы будете иметь записи' n' CSS? Просто для определения двух разных стилей? Мне было бы гораздо лучше просто определить '.size-A' и' .size-B' и применить их к каждому соответствующему сообщению в PHP. –

+0

Спасибо, что назвали это ужасным - я предположил, что он не способен/не хочет копать глубже в WordPress/PHP. Вы когда-нибудь думали об этом? –

0

Предполагая, что вы уже определили ваши размеры миниатюр (например, с помощью add_image_size()) и учитывая, что ваша последовательность A B A A A B A кажется совершенно случайным образом для меня, я неоднократно перебирать массив с большим -измеряет их до the_post_thumbnail() функции. Что-то вроде:

<?php 
query_posts('post_type=page&order=ASC&post_parent=0'); 
$thumbsizes = [ 
    'size-a', 
    'size-b', 
    'size-a', 
    'size-a', 
    'size-a', 
    'size-b', 
    'size-a', 
]; 
$i = 0; 
while (have_posts()) : the_post(); ?> 
    <a href="<?php the_permalink() ?>"> 
     <?php the_post_thumbnail($thumbsizes[ $i ]); ?> 
     <?php the_title(); ?> 
    </a> 
<?php 
$i = ($i + 1) % count($thumbsizes); 
endwhile; 
?> 

Конечно, ваш CSS есть что сказать по пиктограмме размеры тоже ...

Смежные вопросы