What does the_content and get_the_content do in WordPress?

What does the_content and get_the_content do in WordPress?

The WordPress functions the_content and get_the_content are used to pull the main text area from the page or post.



The difference between them is in the way they are used. the_content() echoes the copy and it’s used inside the template files while get_the_content() is fetching it to be used in the PHP code as a variable.

Please note that there is also the_content filter which is used to apply styling and shortcodes by running a chain of filters like wp_autop which adds the tags. The full list of running filters trough the_content filter are wptexturize, convert_smilies, convert_chars, shortcode_unautop and maybe one of the most used ones do_shortcode.

Now we can dig deeper into the functions.

get_the_content pulls the copy directly from the database as a raw string containing the unwrapped shortcodes. In order to make that useful, you will need to pass the data through the_content filter which will give you an appropriate HTML output.

And last but definitely not last is the_content. This function will echo the properly formatted content directly into your template. In its essence the_content calls get_the_content and applies the_content filter before echoing the result.

Except for a few minor things I skipped, now you should have a better picture which content function or filter does what. An interesting thing to mention is that currently (WP ver 5.2) there is a warning that pops up with PHP 7.2 environments. The warning states “Warning: count(): Parameter must be an array or an object that implements Countable in /wp-includes/post-template.php on line 284”. For more information on that please check our article How to Fix PHP 7.2 “Warning: count()” on get_the_content() or the_content() in WordPress.

 

TL;DR

WordPress Codex / Filter Reference / the content

WordPress Codex / Functions / the_content()

Parameters:
$more_link_text – Accepts string, optional. Changes the default string used to generate the read more text for the link when the more tag is used in the content. Defaults to null.

$strip_teaser – Accepts boolean (true or false), optional. When we set this parameter to true the content before the read more link should be removed. Literally, meaning: Remove the teaser content. Here I need to note that on my current environment I wasn’t able to get it working. It appears that there may be an issue with WP 5. Defaults to false.

WordPress Codex / Functions / get_the_content()

Parameters:
$more_link_text – String, Defaults to null.
$strip_teaser – Boolean, Defaults to false
$post – It is used to pull the content for practicular post or page. Accepts WP_Post object or integer with the post ID. Defaults to null.

 

I hope this article was helpful.
Have a great day!

Autor: Dimitar Radev | Modified: June 11, 2019 at 2:52 pm


Leave a Reply

Your email address will not be published. Required fields are marked *

Advertising

Related posts

Change The Color Of Wordpress Admin Dashboard Icon In The Menu

How to change Dash icon color in WordPress admin menu with CSS?

Change the default color for dash icon in the admin menu Probably you have this question when you create a Custom WordPress Theme …

How To Create Simple Wordpress Loop For Posts And Display It In Single.php

How to create simple WordPress Loop for posts and display it in single.php WordPress Theme file

If you want this code to work for you your single.php or page.php file should use both default Wordpress functions to get header and footer content like below