diff --git a/src/wp-includes/general-template.php b/src/wp-includes/general-template.php
index 2ef9eb8f07..fab2d6ad30 100644
--- a/src/wp-includes/general-template.php
+++ b/src/wp-includes/general-template.php
@@ -4713,7 +4713,7 @@ function paginate_links( $args = '' ) {
 			$link = add_query_arg( $add_args, $link );
 		}
 		$link .= $args['add_fragment'];
-		$link  = get_option( 'permalink_structure' ) ? user_trailingslashit( $link, 'paged' ) : $link;
+		$link = get_option('permalink_structure') && !strpos($link, '?') ? user_trailingslashit($link, 'paged') : $link;
 
 		$page_links[] = sprintf(
 			'<a class="prev page-numbers" href="%s">%s</a>',
@@ -4746,7 +4746,7 @@ function paginate_links( $args = '' ) {
 					$link = add_query_arg( $add_args, $link );
 				}
 				$link .= $args['add_fragment'];
-				$link  = get_option( 'permalink_structure' ) ? user_trailingslashit( $link, 'paged' ) : $link;
+				$link = get_option('permalink_structure') && !strpos($link, '?') ? user_trailingslashit($link, 'paged') : $link;
 
 				$page_links[] = sprintf(
 					'<a class="page-numbers" href="%s">%s</a>',
@@ -4771,7 +4771,7 @@ function paginate_links( $args = '' ) {
 			$link = add_query_arg( $add_args, $link );
 		}
 		$link .= $args['add_fragment'];
-		$link  = get_option( 'permalink_structure' ) ? user_trailingslashit( $link, 'paged' ) : $link;
+		$link = get_option('permalink_structure') && !strpos($link, '?') ? user_trailingslashit($link, 'paged') : $link;
 
 		$page_links[] = sprintf(
 			'<a class="next page-numbers" href="%s">%s</a>',
