Strapi helps us to provide pre-made cms backend. In strapi everything is about content type.
Topic: Weird Things About STRAPI
Topic: Document Save States
When we want to store a post into strapi, that time it gives us 2 options: “publish”, “save”.
When we create content as publish/save it creates 2 different records. First 2 are for “save” and the rest 2 are for “publish”. Good thing is when creating a new publish/save it delta the OLD one ID and create a NEW one.

Topic: Content Type change in strapi
We can add multiple fields into strapi content type. For changing the Column Type we need go in inside /src/your-content-type/schema.json
/* OLD ONE */ "attributes": { "title": { "type": "string" }, "description": { "type": "text", "length": 80 },
/* NEW ONE */ "description": { "type": "richtext", } |
Read More: https://docs.strapi.io/cms/backend-customization/models#model-schema
Topic: webp, jpg, png, jpeg , svg support in strapi via REST API.
For more: https://strapi.io/blog/image-upload-to-strapi-via-rest-api-with-nextjs-and-postman
"use server";
// you can configure dor-env details too. const STRAPI_URL: string = "http://localhost:1337";
// accepted image types const ACCEPTED_IMAGE_TYPES = [ "image/jpeg", "image/jpg", "image/png", "image/webp", ];
// upload single or multiple images export async function uploadMultipleOrSingleAction( prevState: any, formData: FormData ) {}
// Upload an Image and link to an entry export async function LinkByUploadAction( prevState: any, formData: FormData ) {}
// Link an Uploaded image to an Entry by ID export async function linkFromGalleryAction( prevState: any, formData: FormData ) {}
// Upload image at entry creation export async function uploadAtEntryCreationAction( prevState: any, formData: FormData ){}
// update mage file info action export async function updateImageAction( prevState: any, formData: FormData ){} |