I’m not a 100% sure what your last post was about, whether it was asking a question or making statements on how you might anticipate problems.
More like a statement of how I had seen things working in the forum and what I had discussed with Bubble support. Yesterday I did also discover another “unpleasant” limitation from Bubble that they don’t use any of the AWS regions in Europe for the hosting, which kind of also explains why it’s taking around 12-14 seconds for my pages to load (I’m in Spain) .
If, I were building an app that would require SEO and I would be needing good SEO for more than just one type of content (in your screen shot you only show structured data for products so I can not assume you need more than one, but many developers would), I would definitely not be building it as an SPA since the need for on page SEO, like the structured data in header and page title/meta description and images for social sharing would require inline conditionals, the likes of which could end up slowing down the speed at which those inline conditionals are evaluated and causing Google crawlers to leave the page before any content is loaded. If, you only require one type of content, such as products only, to be used for SEO, then you can use an SPA approach, but you need to know everything there is about how to improve your page load speed for an SPA.
The screenshot was taken from another thread I saw in the forum, it’s not my setup. I think I could get away with one type of content if architected correctly …
Ideally my page would be structured in the following way:
- www.myweb.com/main-category/es
Page containing mainly a grid-style menu with links to each of the different subcategories
- www.myweb.com/main-category/es/subcategory
Page with mainly a big RG already filtered as per the “Subcategory” selected. There will be many of these pages
I think these two pages from above could be grouped in an SPA fashion using visibility conditionals. When I would select one of the options (of data type “X”) presented by the above-mentioned RG, then I would like to set the value of the “main-category” page data type as of the one of the item selected in the RG. I could still play with conditionals and say that, when This Page’s thing “is not empty”, show only the layout corresponding to the element from the RG I want to display and hide everything else, but I’m not sure if this would already add a lot of overhead or not.
In my multi language site in which I have product page, blog and jobs, I have a page for ‘shop’ (product search results and selected product are on the same page), page for ‘blog’ (all categories are displayed as well as a selected blog article on the same page…meaning can be .com/blog/en/home or .com/blog/th/home or .com/blog/en/how-to-do-seo or .com/blog/th/how-to-do-seo) as well as one page for ‘jobs’ which again like the page for products is used to display the job search as well as selected job so url can be .com/jobs/en (shows search results) as well as .com/jobs/en/construction-manager-pepsi-co and the same for the ‘th’ versions.
In my site I have structured data setup for the selected product, blog post or job, as well as for the product search, blog categories and job search…I needed to use inline conditionals to determine 1st, what language, 2nd, is there a selected product, article or job.
The way that I set things up, my site SEO data is picked up by Google properly.
Would you be kind enough to share your site? It seems like you’ve accomplished to implement something very similar to what I’m trying to do so it could be pretty useful for me. How have you handled the actual translations of your content if I may ask? Using conditionals? Plugin? Translate API? I want to find the most efficient way of doing this as well adding as little overhead as possible. One of my concerns is the language used in the URL path as such, I would ideally like to have the URL path in the same language that gets selected to be displayed to the user, but I guess that would require making copies of all pages for each language (and maintaining them).
Additionally, in my app that I mentioned having product search and selected product on the same page, I can not use the content type, nor can you use content type when using multiple languages the way I have where I put the language code in the url path list as .com/blog/en or .com/shop/en
Can you elaborate on this? Why can’t you use content type when having product search and product in the same page? (this is kind of what I need)
Similarly for the multiple language set up, why wouldn’t it be possible to use content type in that scenario? Is it somehow related to the fact that the content type you’d be referencing would come straight from the Database and hence not translated? (I guess in this case working with Translate API would be the only option)
Many thanks for your detailed response!