I am currently hooking on the_content()
but that goes through the Wordpress loop too. How can I only hook on the Single.php page?
Also, is there a way to only look on the first X posts in the Wordpress loop?
By the way, I am creating a plugin
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It only takes a minute to sign up.
Sign up to join this communityThis will handle appending the content to single posts:
function yourprefix_add_to_content( $content ) {
if( is_single() ) {
$content .= 'Your new content here';
}
return $content;
}
add_filter( 'the_content', 'yourprefix_add_to_content' );
Just to add to Pippin's answer, in my case some content were also being shown in other parts of the single
page, e.g. sidebar. Checking just is_single()
also triggered the content modification in the other areas. Here's another check so that only the main content will have appended stuff:
function yourprefix_add_to_content( $content ) {
if( is_single() && ! empty( $GLOBALS['post'] ) ) {
if ( $GLOBALS['post']->ID == get_the_ID() ) {
$content .= 'Your new content here';
}
}
return $content;
}
add_filter('the_content', 'yourprefix_add_to_content');
single.php
, open upsingle.php
and modify it. By its nature,single.php
will only have a single post in the loop. To get other posts, you'll need a secondary loop after your main loop. – SickHippie Jun 28 '12 at 22:52