Нуб Вопрос: Wordpress Looping - PullRequest
       5

Нуб Вопрос: Wordpress Looping

2 голосов
/ 02 апреля 2010

Может кто-нибудь дать мне необходимый цикл Wordpress и объяснить, что с ним происходит? Я хотел бы собрать несколько шаблонов, но я не очень хорошо разбираюсь в чёрном ящике. Другими словами, я полностью способен написать свою собственную CMS, но когда дело доходит до использования чужих и ее произвольных правил, я совершенно растерялся и просто не могу разобраться со стандартным циклом Wordpress использует. Спасибо за руководство пациента.

Ответы [ 2 ]

4 голосов
/ 02 апреля 2010

Существует очень хороший учебник от SpoonGraphics, в котором рассказывается о том, как создать собственную тему для WordPress, и объясняется необходимое кодирование. Он также охватывает стандартный цикл WordPress и объясняет, как построить вокруг него:

http://www.blog.spoongraphics.co.uk/tutorials/how-to-build-a-custom-wordpress-theme-from-scratch

3 голосов
/ 02 апреля 2010

Возможно, вы захотите начать с чтения статьи Кодекса на The_Loop . Помимо просмотра документации по их циклам, чтение различных шаблонных тегов также должно быть вам полезно.

Начинается цикл:

<?php if ( $posts ) : foreach ( $posts as $post ) : start_wp(); ?>

Создает контейнер div, размеченный пост-специфическими id и post_class дополнительно добавляет классы CSS в зависимости от категорий / тегов / etc сообщения.

<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

Отображение заголовка сообщения в виде постоянной ссылки к сообщению.

<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2

Отображает некоторые публикации Дата со ссылкой на другие сообщения того же Автор .

 <small><?php the_time('F jS, Y') ?> by <?php the_author_posts_link() ?></small>

Извлекает все содержимое сообщения, обернутого в контейнер div для упрощения CSS-стиля.

Закрывает цикл и отображает сообщение, если сообщения не найдены.

<?php endforeach; else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p> 
<?php endif; ?>
...