diff --git content-reference.php content-reference.php
index 43c9baf..75f2dac 100644
--- content-reference.php
+++ content-reference.php
@@ -25,10 +25,12 @@ if ( ! empty( $since ) ) : ?>
 
 	<?php
 	$source_file = get_source_file();
-	if ( ! empty( $source_file ) ) : ?>
-	<section class="source">
-		<p><strong><?php _e( 'Source:', 'wporg' ); ?></strong> <a href="<?php echo get_source_file_link( $source_file ); ?>"><?php echo esc_html( $source_file ); ?></a></p>
-	</section>
+	if ( ! empty( $source_file ) ) :
+		?>
+		<section class="source">
+			<p><strong><?php _e( 'Source:', 'wporg-developer' ); ?> </strong><a href="<?php echo get_source_file_link(); ?>"><?php echo esc_html( $source_file ); ?></a></p>
+			<p><a href="<?php echo get_source_file_archive_link( $source_file ); ?>"><?php _e( 'More in this file.', 'wporg-developer' ); ?></a></p>
+		</section>
 	<?php endif; ?>
 
 <?php /* if ( is_archive() ) : ?>
diff --git content-wp-parser-hook.php content-wp-parser-hook.php
index 6a1bd9f..5ec99c2 100644
--- content-wp-parser-hook.php
+++ content-wp-parser-hook.php
@@ -3,7 +3,6 @@
 <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
 
 	<h1><a href="<?php the_permalink() ?>"><?php echo get_signature(); ?></a></h1>
-
 	<section class="description">
 		<?php the_excerpt(); ?>
 	</section>
@@ -24,10 +23,12 @@
 
 	<?php
 	$source_file = get_source_file();
-	if ( ! empty( $source_file ) ) : ?>
-	<section class="source">
-		<p><strong><?php _e( 'Source:', 'wporg' ); ?></strong> <a href="<?php echo get_source_file_link( $source_file ); ?>"><?php echo esc_html( $source_file ); ?></a></p>
-	</section>
+	if ( ! empty( $source_file ) ) :
+		?>
+		<section class="source">
+			<p><strong><?php _e( 'Source:', 'wporg-developer' ); ?> </strong><a href="<?php echo get_source_file_link(); ?>"><?php echo esc_html( $source_file ); ?></a></p>
+			<p><a href="<?php echo get_source_file_archive_link( $source_file ); ?>"><?php _e( 'More in this file.', 'wporg-developer' ); ?></a></p>
+		</section>
 	<?php endif; ?>
 
 	<?php /* if ( is_archive() ) : ?>
diff --git inc/template-tags.php inc/template-tags.php
index b419f33..f02cb7a 100755
--- inc/template-tags.php
+++ inc/template-tags.php
@@ -531,13 +531,13 @@ namespace DevHub {
 	}
 
 	/**
-	 * Retrieve URL to source file archive
+	 * Retrieve URL to source file archive.
 	 *
 	 * @param string $name
 	 *
 	 * @return string
 	 */
-	function get_source_file_link( $name = null ) {
+	function get_source_file_archive_link( $name = null ) {
 
 		$source_file_object = get_term_by( 'name', empty( $name ) ? get_source_file() : $name, 'wp-parser-source-file' );
 
@@ -559,6 +559,31 @@ namespace DevHub {
 	}
 
 	/**
+	 * Retrieve the URL to the actual source file and line.
+	 *
+	 * @param null $post_id     Post ID.
+	 * @param bool $line_number Whether to append the line number to the URL.
+	 *                          Default true.
+	 * @return string Source file URL with or without line number.
+	 */
+	function get_source_file_link( $post_id = null, $line_number = true ) {
+		$post_id = empty( $post_id ) ? get_the_ID() : $post_id;
+		$url     = '';
+
+		// Source file.
+		$source_file = get_source_file( $post_id );
+		if ( ! empty( $source_file ) ) {
+			$url = 'https://core.trac.wordpress.org/browser/trunk/src/' . $source_file;
+
+			// Line number.
+			if ( $line_number = get_post_meta( get_the_ID(), '_wp-parser_line_num', true ) ) {
+				$url .= "#L{$line_number}";
+			}
+		}
+		return esc_url( $url );
+	}
+
+	/**
 	 * Compare two objects by name for sorting.
 	 *
 	 * @param WP_Post $a Post A
