20+ найпопулярніших хаків WordPress Loop
Цикл є основним процесом у WordPress, тому він є майже в кожному файлі теми. По суті, це PHP-код, який використовується платформою для відображення публікацій через файли шаблонів теми. Іншими словами, він величезний. Насправді це критично, адже без циклу сайт працювати не буде.
Налаштування цього набору неймовірно потужних функцій може розширити можливості вашого сайту WordPress. Наприклад, ви можете змінити спосіб відображення публікацій на домашній сторінці та відсортувати їх за допомогою певних параметрів. Зважаючи на те, що цикл — це найпростіша річ для модифікації, можна отримати досить вражаючі та креативні хаки.
Давайте покажемо вам понад 20 хаків циклів, якими ви повинні скористатися прямо зараз, щоб це сталося, без необхідності встановлювати плагіни.
1 Розмістіть рекламу після першої публікації
Як блогер, ви добре знаєте, що реклама є одним із найкращих способів заробити гроші. Отримання таких необхідних кліків від відвідувачів, звичайно, складна справа, і багато блогерів не користуються високими рейтингами кліків. Розміщення реклами після першої публікації може бути хорошим способом збільшити їхню кількість, тож спробуйте це просте налаштування.
Замініть свою петлю на наведену нижче. Зверніть увагу, що туди потрібно вставити код оголошення:
//Insert the code of an ad in this line
2 Показуйте застарілі, але популярні дописи 1-річної давності
Деякі дописи у вашому блозі, створені рік тому, все ще можуть бути популярними серед ваших читачів. Наприклад, це може бути стаття з інструкціями або інший вид вічнозеленого вмісту. Щоб переконатися, що ці публікації залишаються популярними, ви можете застосувати цей зручний хак.
Вставте цей код у файл single.php:
3 Відобразіть п’ять останніх прикріплених повідомлень у циклі
Функція за замовчуванням дозволяє приклеювати одну публікацію до головної сторінки. Наведений нижче хак розміщує п’ять липких повідомлень.
Багато блогерів вважають закріплені дописи пропонованими, оскільки вони дозволяють відображати запис над іншими. Якщо ви хочете створити власну категорію «Вибір редактора», для цього є хак. Наведений нижче код потрібно вставити будь-де в тему, щоб він працював. Ви також можете змінити номер, щоб відображати менше публікацій, замінивши номер у четвертий рядок.
$sticky, 'caller_get_posts' => 1) );
if (have_posts()): while (have_posts()): the_post();
the_title();
the_excerpt();
endwhile;
endif;
?>
4 Список дописів із певної категорії
Розрізняйте публікації з однієї категорії за допомогою хака нижче.
Якщо з якоїсь причини вам потрібно відрізнити публікації, які мають одну категорію (наприклад, статті з інструкціями для авторів есеїв), вставте наступний код у файл циклу.
cat_ID. ' ';
query_posts('child_of='.$thecat);
if (have_posts()): while (have_posts()): the_post();
//Classic WP loop
endwhile;endif;
?>
5 Надайте перелік майбутніх посад
Повідомлення читачів про майбутні дописи може зацікавити їх і змусити їх повернутися до вашого блогу, щоб прочитати їх. Якщо вам це здається чудовою ідеєю, скористайтеся наведеним нижче кодом, щоб надати короткий список майбутніх публікацій на вашому сайті WordPress.
No future events scheduled.
6 Завантажуйте публікації в певну дату
Якщо вам часто важко знайти якісь публікації у своїй стрічці, ви можете шукати їх за допомогою циклу. Це можливо, вставивши наведений нижче код, який спрощує пошук. Зокрема, він отримує записи, опубліковані між двома датами, які ви вказуєте самостійно.
= '2012-08-19' AND post_date
7 Відобразіть цикл зображень
Галерея зображень на стартовій сторінці веб-сайту WordPress — гарна ідея, оскільки більшість людей цінують візуальні ефекти. Якщо ваші публікації містять головне зображення, наведений нижче код отримає їх для демонстрації в циклі.
Вставте наступний код у файл functions.php:
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('//i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Determines a default image
$first_img = "/images/default.webp";
}
return $first_img;
}
8 Автоматично видаляйте повідомлення, встановлюючи термін дії
Припустімо, ви проводите конкурс на збільшення читацької аудиторії свого блогу. Після завершення конкурсу ви публікуєте результати, а головне — відповіді, або підказки, підказки до них. Звичайно, вони не повинні бути доступними для читачів вічно, тому що ви можете провести інший конкурс у майбутньому, чи не так?
Хороший спосіб видаляти дописи, навіть якщо ви про них забули, — це запланувати його, встановивши термін дії. Наведений нижче цикл замінює ваш існуючий і робить саме це.
Не забудьте використовувати формат мм/дд/рррр 00:00:00, щоб замінити час закінчення терміну дії.
$expirationtime = get_post_custom_values('expiration');
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}
$secondsbetween = strtotime($expirestring)-time();
if ($secondsbetween > 0) {
// For example…
the_title();
the_excerpt();
}
endwhile;
endif;
?>
9 Відокремте коментарі від трекбеків
На популярний запис у вашому блозі будуть посилання з багатьох інших сайтів. Щоб читачам було зручно стежити за обговоренням у розділі коментарів, слід розділити коментарі та трекбеки.
Все, що вам потрібно зробити, це відкрити comments.php і знайти наступне:
foreach ($comments as $comment): ?>
// Comments are displayed here
endforeach;
Знайшов його? Чудово, тепер замініть його новим кодом:
10 Показати пов’язані публікації
Відображення пов’язаних дописів – хороший спосіб збільшити кількість читачів. Все, що вам потрібно зробити для цього, це вставити спеціальний код у файл single.php.
ID);
$tagIDs = array();
if ($tags) {
$tagcount = count($tags);
for ($i = 0; $i term_id;
}
$args=array(
'tag__in' => $tagIDs,
'post__not_in' => array($post->ID),
'showposts'=>5,
'caller_get_posts'=>1
);
$my_query = new WP_Query($args);
if( $my_query->have_posts()) {
while ($my_query->have_posts()): $my_query->the_post(); ?>
Переважна більшість тем WordPress показує всі повідомлення однаково на початковій сторінці. Проте, якщо вам це не подобається, ви можете змінити це та визначити, які з них мають відображатися повністю, а для яких достатньо лише уривків.
Знайдіть файл index.php і знайдіть там цикл. Цей код замінює його:
12 Відображайте рекламний вміст над публікаціями на домашній сторінці
Вставте наступний код у файл index.php, щоб додати рекламний вміст.
13 Перерахуйте всіх авторів блогу на сторінці
Просто вставте цей код у будь-яке місце циклу, щоб відобразити список усіх авторів.
14 Використовуйте спеціальне поле для відображення імені гостьового автора
Якщо ви використовуєте запрошених авторів у своєму блозі, дуже ймовірно, що ви не створите для них окрему сторінку. Чому б замість цього просто не відобразити їх ім’я?
Для цього вставте цей код у single.php:
ID, "guest-author", true);
if ($author != "") {
echo $author;
} else {
the_author();
} ?>
15 Зробіть зображення обов’язковою вимогою для публікації
Публікації із зображеннями часто переглядаються частіше, ніж публікації без. Відкрийте файл functions.php, щоб зробити їх обов’язковими.
add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');
function wpds_check_thumbnail( $post_id) {
// change to any custom post type
if( get_post_type($post_id) != 'post') return;
if (! has_post_thumbnail( $post_id)) {
// set a transient to show the users an admin message
set_transient( "has_post_thumbnail", "no" );
// unhook this function so it doesn't loop infinitely
remove_action('save_post', 'wpds_check_thumbnail');
// update the post set it to draft
ks29so_update_post(array('ID' => $post_id, 'post_status' => 'draft'));
add_action('save_post', 'wpds_check_thumbnail');
} else {
delete_transient( "has_post_thumbnail" );
}
}
function wpds_thumbnail_error() {
// check if the transient is set, and display the error message
if (get_transient( "has_post_thumbnail") == "no") {
echo "You must add a Featured Image before publishing this. Don't panic, your post is saved.
";
delete_transient( "has_post_thumbnail" );
}
}
16 Перенаправлення на певну сторінку після реєстрації
Відкрийте файл functions.php і додайте наведений нижче код.
function __my_registration_redirect(){
return home_url( '/my-page' );
}
add_filter( 'registration_redirect', '__my_registration_redirect' );
#17. Insert Ads in Post
Use this code in your functions.php file to wrap ads in a post in any place you want.
Hack
function googleadsense($content){
$adsensecode = 'Your Ad Codes Here';
$pattern = '';
$content = str_replace($pattern, $adsensecode, $content);
return $content;
}
add_filter('the_content', 'googleadsense');
18 Використовуйте короткі коди для відображення реклами
Виберіть місце, куди ви хочете вставити рекламу, і вставте наведений нижче код у functions.php.
function showads() {
return '
AD’S CODE HERE
';
}
add_shortcode('adsense', 'showads');
19 Відображення найбільш коментованих публікацій
Додайте наступний код до файлу functions.php, щоб відображати публікації з найбільшою кількістю коментарів.
function wpb_most_commented_posts() {
ob_start();?>
//Comment code goes here