A dynamically generated website doesn't have most of its content hard coded on the HTML file. Sometimes it waits for a user to login or wait for an input to generate its views. So it would look something like this.
<section id = 'blog-content' class="section">
<div class="columns is-centered">
<?php echo $content ?>
</div>
</section>
In that example, the variable $content
contains paragraphs and a title that someone wrote on a certain topic for their blog fetched from their database. How does a crawler know the content of that page if its content is dynamically generated? Since the content is not hard coded, the crawler wouldn't know the content exist because all it would see is the code i post above, right?
EDIT
To expand on what stephen said, the url would be something like this.
www.example.com/blog/$title
The $title
variable has the same value as the one in the $content
variable above.