Wordpress - Difference between the_permalink() and get_permalink() function
the_permalink
echos out the permalink of the current post to the frontend.
get_permalink
however returns it as a variable, but does not echo it out. You can also pass a post ID to it if you want the permalink of another post.
the_permalink
is equivalent to:
echo get_permalink();
Which is very close to what it actually does. This is the implementation of the_permalink
:
function the_permalink() {
echo esc_url( apply_filters( 'the_permalink', get_permalink() ) );
}
If you look at the WordPress Codex on this you will see that get_permalink()
is there for use outside the loop. the_permalink()
is for use within the loop. That’s the easiest way to look at it.