comments_popup_link()
Outputs a ready <a> link to the comment popup, works when using the script comments_popup_script().
If the required script is not called, a simple link to the post comments will be output, see comments_link().
This template tag must be inside the WordPress Loop or the comments loop.
The script is deprecated since WP 4.5.0.
How the popup window will look is determined by the template file: comments-popup.php.
The function outputs nothing if individual post pages are displayed: is_single() or is_page().
Hooks from the function
Returns
null.
Usage
comments_popup_link( $zero, $one, $more, $css_class, $none);
- $zero(string)
- Text to show when there are no comments.
Default: 'No comments' - $one(string)
- Text to show if there is 1 comment.
Default: '1 comment' - $more(string)
- Text to show if there is more than one comment.
Default: '%1$s comments' - $css_class(string)
- Name of the css class for the link. By default, no class is set.
Default: '' - $none(string)
- Text to show if commenting is disabled for the post.
Default: 'Commenting is disabled'
Examples
#1 How not to show the link to the comment popup when comments are closed:
<?php
if( comments_open() ){
comments_popup_link( 'No comments yet', '1 comment', '% comments', 'c_link' );
}
?> #2 Load Different CSS classes according to Comment-condition
If you want to load different classes into comments_popup_link(), use the following:
$css_class = 'zero-comments';
$number = (int) get_comments_number( get_the_ID() );
if ( 1 === $number ){
$css_class = 'one-comment';
}
elseif ( 1 < $number ){
$css_class = 'multiple-comments';
}
comments_popup_link(
__( 'Post a Comment', 'wpdocs_textdomain' ),
__( '1 Comment', 'wpdocs_textdomain' ),
__( '% Comments', 'wpdocs_textdomain' ),
$css_class,
__( 'Comments are Closed', 'wpdocs_textdomain' )
); #3 Text Response for Number of Comments with Localization
Displays the comments popup link, using No comments yet for no comments, 1 comment for one, % comments for more than one (% replaced by NUMBER of comments), and Comments are off for this post if commenting is disabled.
Additionally, comments-link is a custom CSS class for the link.
<?php comments_popup_link( __( 'Leave a comment', 'text-domain' ), __( '1 Comment', 'text-domain' ), __( '% Comments', 'text-domain' ) ); ?>
#4 Display a link to the post comments
<p><?php comments_popup_link(); ?></p>
We get:
<a href="https://example.com/post-name#respond">No Comments</a>
If post is password protected (see post_password_required(), then _e( 'Enter your password to view comments.' ) text will be shown.
Changelog
| Since 0.71 | Introduced. |