Just don't serve any content in the view templates - only via your API controller. Create document types without a template or you could just put a single template on all doc types serving dummy content / redirecting elsewhere.
If you're not outputting any CMS data in the views then "the public" can't see anything.
It depend what you mean "prevent the cms from publishing to the public"?
Out of the box you have option to save or to publish. Only published version is shown to user.
I'll probably butcher some of the description below, but I wanted to give you some insight to our approach. It may not be 100% accurate. Apologize!
We've used the Umbraco CMS to feed data into a number of applications - websites are the obvious choice, but we've also done mobile apps and voice controlled apps.
Here's a quick screenshot of the content node tree in a project we've just begun:
We create a base node for each application.
Website
Native Android/iOS App
Datasets
When it comes to editing content for the native app, we take the same block list approach as the website. There's an entire set of templates and blocks specially created for editors to have control over their apps. The blocks are designed in Xamarin / .NET Maui - so all we are concerned with is the JSON representation of the content node -> to the screen.
Our app "phones home" for new data through an API controller. Most of our apps are so small that we can just request a refresh of everything, and begin downloading all JSON and media in the background. The app stores it in a local db on the phone.
For apps that have a lot of content, we've hooked into the content publish event (Umbraco) and generate a new cache key each time. The cache key helps us validate whether the local db on the phone has the latest content, or we push the necessary updates.
Umbraco for app development
Hi, has anyone used Umbraco as a backend CMS for app development - having a web app and native mobile apps? Any recommendations or other approaches?
Yes, I did it, just need export data to consume by mobile application. You can do it by webapi or export data to static storage
Hi, thank you. How did you prevent the cms from publishing to the public?
Just don't serve any content in the view templates - only via your API controller. Create document types without a template or you could just put a single template on all doc types serving dummy content / redirecting elsewhere.
If you're not outputting any CMS data in the views then "the public" can't see anything.
Does that help?
how did you export your data? by data do you mean the different content and media types? I'm using umbraco heartcore
It depend what you mean "prevent the cms from publishing to the public"? Out of the box you have option to save or to publish. Only published version is shown to user.
Something that could be interesting is: https://github.com/rasmusjp/umbraco-graphql.
I'll probably butcher some of the description below, but I wanted to give you some insight to our approach. It may not be 100% accurate. Apologize!
We've used the Umbraco CMS to feed data into a number of applications - websites are the obvious choice, but we've also done mobile apps and voice controlled apps.
Here's a quick screenshot of the content node tree in a project we've just begun:
We create a base node for each application.
When it comes to editing content for the native app, we take the same block list approach as the website. There's an entire set of templates and blocks specially created for editors to have control over their apps. The blocks are designed in Xamarin / .NET Maui - so all we are concerned with is the JSON representation of the content node -> to the screen.
Our app "phones home" for new data through an API controller. Most of our apps are so small that we can just request a refresh of everything, and begin downloading all JSON and media in the background. The app stores it in a local db on the phone.
For apps that have a lot of content, we've hooked into the content publish event (Umbraco) and generate a new cache key each time. The cache key helps us validate whether the local db on the phone has the latest content, or we push the necessary updates.
I use Umbraco for various applications as backend. You can create your controllers + authentication or you can use Delivery API.
is working on a reply...