I have task to retrieve data based on location / city list in db.
exampe
posts/berlin
posts/paris
posts/madrid ,…
we have routing
posts/title-slug
posts/a-z0-1
posts/postType
And our SEO chef have nice new idea, find posts by city names, where city list ist dynamic (city must have more than 3 posts).
Any idea.
Zuluru
January 17, 2019, 9:53pm
2
Run a process periodically to find all such city names and cache them somewhere that the routing initialization can read from, then add them all in a foreach
? Any chance they’d be okay with a different URL structure like posts/from/paris
or just from/paris
?
@Zuluru
Thanks,
i have same idea about background process.
no our routing is posts/{here-come-various-type-of-slug/inclusive-subslug}
I have now one other idea, store all patterns in db and slugs in db.
you might use TableRegistry
anywhere even in routes.php
ie.
$citiesTable = \Cake\ORM\TableRegistry::getTableLocator()->get('Cities');
$topCities = $citiesTable->find('top')->all();
note that using only city name can be potentially colliding - cities with same names but it depends on your dataset
@Graziel Thanks, I know that