One page website vs. inside pages

Hi there,

I am building a website for a friend who wants one page website built for ease of updating. However, there is a lot of content that would appear on the page.

I’m wondering if it’s better to have a one page or breaking the content into several pages?

I’m thinking that having multiple pages will benefit SEO and page load speed.

Does anyone have any thoughts on this.

Thanks!

I’ve no idea how it would affect SEO, but as a potential visitor, I would much rather see a site with several short pages, where I can easily navigate and find the content I want than a single long page requiring endless scrolling up and down.

Build it for your users, not for SEO or ease of updating.

4 Likes

I think that what you are asking about are usually called Single Page Applications. So you can search for website single page applications SEO and page load speed. I see many results, including the following.

1 Like

If you are using PHP then I would be tempted to adopt the following layout because:

  1. far easier to debug
  2. each page can be called separately
  3. global variables and defined constants can be utilised

file: index.php:

<?php 
declare(strict_types=1);

define('ONE_PAGE', TRUE);
$title = 'title goes here';

?>
<!DOCTYPE html>
<html lang="en">
<head>
  <?php require 'incs/hdg-000.php'; ?>
</head>
<body>
<?php 
  require '/incs/logo-000.php';

  require '/incs/page-001.php';
  require '/incs/page-002.php';
  require '/incs/page-003.php';
  require '/incs/page-004.php';

  require '/incs/footer.php';

file: page-001.php

<?php 
declare(strict_types=1);

defined('ONE_PAGE') ?: define('ONE_PAGE', FALSE);  

//==================================
  if( ONE_PAGE) : 
    // DO NOT PRINT HEADER
  else :
?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <?php require 'incs/hdg-001.php'; ?>
    </head>
    <body>
    <?php require 'logo-001.php'; ?>
<?php endif; 
//==================================

 echo '<h1> page-001.php </h1>';
 echo '<div> Content goes here </div>';

  if(ONE_PAGE) : 
     // DO NOT PRINT FOOTER
  else:
    require 'footer-001.php';
  endif;

1 Like