Цикл wordpress - wordpress codex
Цикл використовується в WordPress для відображення записів. Використовуючи Цикл, WordPress обробляє кожну з цих записів для виведення на поточній сторінці і форматує її відповідно до зазначених критеріїв всередині Циклу. Будь HTML або PHP код, раположенноє всередині Циклу, буде повторений для кожного запису.
Коли в документації WordPress йдеться "Цей тег використовується всередині Циклу", як для конкретних тегів Шаблона або плагінів, тег буде повторений для кожного запису. Наприклад, в Цикл, за замовчуванням, для кожного запису виводиться наступна інформація:
Іншу інформацію про кожного запису можна відобразити за допомогою відповідних тегів шаблону або (для просунутих користувачів) за допомогою введення змінної $ post. яка містить інформацію поточного запису, поки Цикл виконується.
Використання Циклу
Цикл повинен бути розташований в файлі index.php і в будь-яких інших шаблонах, які використовуються для відображення записів.
Переконайтеся, що включили виклик заголовка Шаблона (header.php), у верхній частині Шаблонів вашої Теми. Якщо ви використовуєте Цикл всередині власного дизайну (і ваш дизайн не є шаблоном), встановіть WP_USE_THEMES в значення false.
Цикл стартує тут:
і закінчується тут:
приклади Циклов
Стилізація Записів з різних Рубрик
Цей приклад відображає кожну запис з заголовком (який використовується в якості Постійної посилання до запису), рубрика і Вмістом. Це дуже простий приклад; ймовірно ваші Шаблони будуть відображати більше інформації, в такому випадку стилізацію буде простіше зробити за допомогою CSS.
Для того щоб отримати більше користі з цього прикладу, виділимо записи з Рубрики з ID рівним '3'. Для цього використовується Тег Шаблона in_category ().
Запам'ятайте: Кожен раз, коли ви хочете використовувати HTML код, ви повинні знаходитися поза тегів. PHP код (навіть такі речі як прості фігурні дужки:>) повинні бути всередині тегів. Ви можете запускати і зупиняти PHP код з тим щоб вставляти в проміжки HTML код, з кожним if і else виразом, як показано в прикладі вище.
Виняток Записів з деяких Рубрик
Цей приклад може бути використаний для виключення певної Рубрики зі звичайного відображення. Він заснований на попередньому прикладі.
Запам'ятайте. Якщо ви використовуєте цей приклад для основної сторінки, ви повинні використовувати інший Шаблон для архівів Рубрик. Інакше, WordPress виключатиме всі записи в Рубриці 3, кожен раз, коли ви переглядаєте Архів цій Рубрики!
Однак, якщо ви хочете використовувати цей же файл шаблону, ви повинні обійти це використовуючи тег is_home ().
Завдяки цьому записи з Рубрики 3 будуть виключені тільки з головної сторінки. Існують інші Умовні Теги. які можна використовувати для управління виводу в залежності від того чи виконується певна умова на запитуваної сторінці.
множинні Цикли
Цей розділ присвячений розширеному використанню Циклу. Тут буде трохи технічної інформації - але нехай це вас не лякає. Ми почнемо з найпростішого і доклавши трохи кмітливості, терпіння і ентузіазму, ви теж зможете будувати множинні Цикли.
По-перше, "навіщо потрібно використовувати множинні Цикли?" Множинні цикли можуть знадобитися в тому випадку, якщо вам необхідно провести якісь різні непереборної над декількома групами записів, і при цьому розташувати їх на одній сторінці. Різні дії - можуть означати все що завгодно, ви обмежені тільки PHP-майстерністю і власною фантазією.
Ми перейдемо до прикладів нижче, але спочатку ви повинні ознайомитися з основами. Погляньте на простий Цикл. Він складається з:
Простіше кажучи (люди, знайомі з PHP і мовою коду, можуть пропустити), вищевказане можна прочитати як: Якщо ми збираємося відображати записи, тоді отримаємо їх по одній. Для кожного запису в списку відобразити відповідні їй . Коли дійдемо до останнього запису, зупинитися. Рядок (ки) залежить від шаблону.
Слова атрибути запису. в цьому прикладі простої замінник частини коду, який описує як форматувати і відображати кожну запис на сторінці. Цей код може бути змінений в залежності від того, яким ви хочете бачити свій WordPress. Якщо відкриєте файлу index.php теми Кубрика, секція атрибути запису буде виглядати ось так:
приклади Циклов
Множинні Цикли. приклад 1
Якщо вам потрібно зберегти первісний запит, ви можете створити новий об'єкт запиту.
Множинні Цикли Приклад 2
Важливо: В PHP5, оператор "=" створює посилання на об'єкт, замість того що копіювати його, як це було в php4. Щоб Приклад 2 заробив в PHP 5, вам потрібно використовувати наступний код:
Однак, цей другий приклад не працює в WordPress 2.1.
Множинні Цикли Приклад 3 - Модулі
Просто замініть наступні рядки:
Множинні Цикли в Дії
Найкращий спосіб зрозуміти як використовувати множинні цикли - розглянути приклад їх використання. Найчастіше, множинні цикли використовуються для відображення двох (і більше) списків записів на страніце.Етот метод використовується веб-майстром в тому випадку, коли він хоче відобразити не тільки останні записи, а ще й записи з деякою рубрики.
Залишимо осторонь всі питання форматування і CSS, уявімо що нам потрібно відобразити два списки записів. Один з яких буде списком останніх записів (стандартна кількість записів дорівнює 10, недавно додали), і інший, який буде містити тільки записи з рубрики "featured". Записи в рубриці "featured" повинні бути відображені першими, следущую за другим списком записів (стандарт) .Хітрость в тому, що не одна запис не повинна бути присутнім в обох рубриках.
Крок 1. Отримати записи тільки з рубрики "featured".
Говорячи простою мовою, вищевказаний код можна прочтітать так:
Встановити $ my_query рівним результату запиту всіх записів, де назва рубрики featured, і крім того, повернути мені тільки одну запис. Також, встановити значення змінної $ do_not_duplicate рівній ID-значенням одиночній, яку повертатимуть записи. Вибрати то що описано в рядку Отримати записи разом з параметрами форматування, пов'язані з повертається записом.
Зверніть внимение, що нам знадобиться використовувати значення змінної $ do_not_duplicate в наступному кроці, щоб переконатися, що та ж сама запис не потрапить в обидва списки.
Крок 2. Другий цикл, отримання Х останніх записів (виключаючи першу).
Представлений код отримує X останніх записів (як описано в налаштуваннях WordPress), зберігає одну, вже відображену в першому циклі, і відображає інші записи, відповідно до секцією Отримати записи.
Говорячи простою мовою, вищевказаний код можна прочтітать так:
Отримати всі записи; де запис дорівнює $ do_not_duplicate. то нічого не робити (continue), в іншому випадку відобразити всі інші записи відповідно до секцією Do stuff. Також, оновити кеш, щоб плагіни пов'язані з тегірованіем і ключовими словами працювали нормально. Повернути змінну $ do_not_duplicate. містить ID записи, раніше виведеної.
Here is what the final piece of code looks like without any formatting.
This article on multiple loops is a combination of Ryan Boren and Alex King's discussion about the Loop on the Hackers Mailing List as well as the tutorial written at MaxPower.