One of the big reasons I’m wanting to migrate from Bubble to WeWeb is the SEO benefit (aka, static collection pages). Not only will I be able to have fast and SEO-friendly blog content, but my single product pages would get some SEO love as well.
However, as I dig deeper, I’m starting to worry that (aside from blog posts) my product pages are doomed to be dynamic pages, which is back to where I currently am on my Bubble site.
Here is a quick overview of how my site (on Bubble) currently operates and I’m wondering the what the most SEO-friendly way is to recreate this in WeWeb:
I’ve got a search page where users can filter through products. It’s all dynamic and every time the user updates their search filter, a new API call to my Xano database is made. This is largely a deal/price comparison app so being able to sort by the latest price which changes in my Xano database multiple times a day (think of it like Expedia, Trivago, etc).
When the user clicks on a product, they go to a /product/ page that is populated via the Xano API based off the current URL parameter (basically the same thing as a Dynamic Collection Page in WeWeb). It works great for the user but obviously not great for SEO.
My Xano database is essentially fetching prices from all over the web 24/7 and updating the product prices accordingly. The product details themselves don’t change (unless there is a mistake) so the static collection can simply pull all the data, except the pricing details) and then during page load an API call can be made to Xano to fetch the latest pricing details. But what about the actual search page? Is it possible on WeWeb for a user to search & filter through a static collection of products while also being able to filter/sort by the latest prices (provided by a real-time API request)?
Is there a limit to the number of items that can be in a static collection? Or a limit to the number of static collection pages that can exist? Currently my product database is around 4000 products.
When publishing an updated static collection to the site, does that slow down the site (or take it offline) for users who are active on the site right then? I generally add new products to the database each week, sometimes more frequently.
When making a Static Collection, I’m guessing that data counts towards the File Storage limit on the WeWeb pricing page. Is that correct? Would the storage size inside my Xano table be an accurate indicator of how much space would be taken up on my WeWeb account?
Any help/suggestions on this would be greatly appreciated!
So a quick update to my original post after further testing:
Found a solution to this part! While there is no “official” way to link a dynamic collection to a static collection page (as far as I can see), you can use the “Link” feature to essentially hardcode the URL to the static collection. In this case, I know that my static collection will use the “id” field as the URL so I can use that same variable on the dynamic page and send the user over.
The only thing that sucks about this method is, because it’s a hardcoded URL, you can’t actually test the functionality without pushing the changes live. (by the way, the staging feature should totally be part of the Starter plan, c’mon!) Nevertheless, this solution should give me the best of both worlds!
That still leaves these much easier questions that would be great to get some clarification on. While I won’t ever be filtering through a static collection (that will all be done via the dynamic version) I still do have thousands of products that I want individual SEO-friendly pages for and that doesn’t include the blog posts that I plan on building via WeWeb+Xano as well.
I wonder if it’s limited to storage now? That would make more sense as throwing a blanket # on collection items seems a bit arbitrary when no two collections are the same (some could be packed with data and others very lite).
The reason I say this is because I noticed after uploading a static collection I see a “Total collection size: ~0.6MB / 25MB” and that was for about 700 products.
Hi,
we plan on working on a new feature to enable you to have dynamic pages that are served with static metadata, meaning that Google and other search engines would receive the metadata of a page even if it is dynamic. It would also work when you share the page on social medias.
This would come with some way to update the sitemap.xml in realtime to have all the routes inside up to date.
We should start to work on this before september but the feature won’t be available to everyone at first, only for some beta testers that we would select.
This would be huge! The biggest long-term issue I’m going to be running into in the near future is the fact that Static Collections have limits on pages. I’m not sure sure if it’s a storage limit or an actual page limit, but even if the limit is higher at like 4,000 pages, for a site that has a large product database like mine, that limit is going to be hit quite soon, and that’s not even factoring in blog posts!
Is this really true? I could not find any document that mentioning on the limit but whether there is a limit in terms of pages we can generate with Static collection is very important so I wanted to double check.
Hi, this feature should be in production next week.
We still have to determine exactly who will have access to it (which plan, beta users…)
You should hear more about this next week !
It will allow you to have static metadata on dynamic pages but the content of the pages will not be prerendered. This should still be enough for a good seo as Google will be able to index the page correctly on the first crawl.
My bad! I should have specified in the release notes that the feature is still in closed beta. We are currently collecting feedback and iterating to improve the feature.
If I understood the feature correctly, in the Metadata tab, I should be able to bind properties to dynamic collection right? As of now, if I don’t have a static collection then I can’t do that.
Actually the answer might be no, I don’t think WeWeb ever ended up implementing the UI for this? Last time we used it, we had to send metadata in their “structured format” as a JSON to a WeWeb endpoint. So you basically had to generate the metadata for each page in your backend and then POST it to WeWeb. I’m not sure about how it works now.
Hi there @Broberto has it 100% right. It has been in closed beta for a while. Works well but we haven’t found the time to build a nicer UI to make it available to everyone.
@jptrinh, if you send me a DM with the email address you’d like to have beta access on, I can activate it for you and send you the related docs.