Обидва відповіді поки що є правильними, але більш ретельна відповідь видається обґрунтованою.
Якщо ви користуєтесь цим:
$content = wpautop( $post->post_content );
ви застосовуєте одну функцію, яка додає теги абзацу до публікації вмісту. wpautop()
є однією з багатьох функцій (включаючи функції плагінів часом), які підключаються the_content
, тому якщо ви це зробите:
$content = apply_filters('the_content', $post->post_content);
ви отримуєте вміст публікації через будь-які фільтри, до the_content
яких входить wpautop()
за замовчуванням.
Нарешті, якщо ви знаходитесь у циклі, ви можете просто зробити це:
$content = apply_filters( 'the_content', get_the_content() );
що по суті є обгорткою для другого фрагмента коду, але, звичайно, це трохи приємніше виглядає. Оновлення 1 вересня 2018 року: Переглянуто на основі коментаря . Реквізит @timmb.
Як правило, я б сказав, що кращий "правильний спосіб" зробити це - від останнього до першого, оскільки використання основної функції WP повинно забезпечити більше сумісності назад (теоретично, принаймні). Єдине інше рішення, яке слід прийняти - це чи дозволити WordPress та плагінам також змінювати вміст публікації. Якщо це так, обов'язково використовуйте 2-й або 3-й варіанти.
$content = apply_filters('the_content', get_the_content);
?