In this guide, you'll learn how to run a Laravel PHP sample app and see your project's content in your browser. The sample app shows content from a sample project. You also get to make a few changes in the project.
Running the PHP sample app
Before going any further, make sure you have the following:
By default, the sample app uses a shared sample project. We recommend connecting the app to your own Sample Project so you can freely make changes and play with it.
In Kontent.ai > Environment settings > General > Environment ID, copy the Environment ID for Production.
In the sample app folder, open the app\Providers\AppServiceProvider.php file.
At the bottom of the file, replace 975bf280-fd91-488c-994c-2f04416e5ee3 with your production environment ID.
Save the file.
3. Run the app
In your command line, navigate to the sample app folder.
Run composer install to install the app dependencies.
(Optional) Run composer run prepare-environment to create a sample Laravel environment file.
Without the environment file present, PHP will throw a warning. However, this doesn't prevent you from starting the app.
Run php artisan serve to start the app.
Open 127.0.0.1:8000 in your browser to see the running sample app.Now, let's explore the Sample Project and update its content so that you can see the changes reflected in your locally running application.
Deploying the PHP sample app
There are several hosting options and ways you can deploy your PHP apps. Here are a few providers and their tutorials on how to use their platform for PHP deployment.
Kontent.ai makes no assumptions about how your content is displayed. It simply delivers your content via a RESTful Delivery API to any application that asks for it – be it a website, mobile app, chatbot, electronic billboard, virtual voice assistant, or an internet-enabled toaster.We deliver the content, you do whatever you want with it – using the technology of your choice.A traditional CMS would force you to put your content into neatly arranged boxes to fit inside a pre-defined template. The power of Kontent.ai comes from not getting in your way. Content structure and content presentation are truly separated and you have the flexibility to define both according to the needs of your project.
The sample app displays data from the Sample Project that demonstrates our best practices and features of Kontent.ai. If you don't have it yet, create your own sample project, it only takes a minute.This full-featured project contains marketing content for Dancing Goat – an imaginary chain of coffee shops. Once you run the sample app, you'll see content from the Sample Project displayed in your browser.
Make a change in the article, for example, edit the Title text or some other element.
Publish the changes to see them in the sample app.
Voila! You have successfully updated content in your Sample Project. Refresh the browser window with your application to see the changes on the website.
Feel free to further explore how the content in your sample project is structured.
Exploring content structure
To see details about the opened content item, go back to Kontent.ai and click Content details in the top right. Under Content type, notice that the item is based on the Article content type.To open the content type for editing, click Article in the content details.
How content is structured in Kontent.ai
A content item is any piece of content in your project. It is made up of elements, such as texts, images, files, etc.Each content item is based on a single content type. A content type is a template that defines the structure of the content item – which elements it contains, their names, limitations, guidelines, and so on.
New to modular content platforms?If you are new to the world of modular content platforms or headless CMSs, you might want to start by building a Hello world application.After you grasp the core idea behind these platforms, everything in the sample application will make a lot more sense much faster.
Looks like someone changed the title of the article.
How the Article content type is modeled
Mix and match the available elements to define your own content types.