Opravit nezobrazování obrázků na webu
Payload skládá URL uploadů absolutně podle serverURL. next/image to vyhodnotí jako externí zdroj a bez images.remotePatterns odmítne s HTTP 400 "url parameter is not allowed" — samotný soubor se přitom servíruje správně, takže se to projevilo až s nahraným obrázkem. Do next/image proto posíláme jen cestu (helper cestaKSouboru). Soubor leží na stejném originu jako web, takže je to korektní, a navíc na tom nezávisí doména: remotePatterns se zapékají při buildu, ale tentýž image běží na stagingu i v produkci pod jiným jménem. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,7 +6,7 @@ import React from 'react'
|
||||
|
||||
import config from '@/payload.config'
|
||||
import type { Media, Product } from '@/payload-types'
|
||||
import { formatujCenu, popisStavu } from '@/lib/format'
|
||||
import { cestaKSouboru, formatujCenu, popisStavu } from '@/lib/format'
|
||||
import '../../styles.css'
|
||||
|
||||
export const dynamic = 'force-dynamic'
|
||||
@@ -59,7 +59,7 @@ export default async function DetailPolozky({ params }: Props) {
|
||||
<Image
|
||||
key={obrazek.id}
|
||||
alt={obrazek.alt ?? polozka.nazev}
|
||||
src={url}
|
||||
src={cestaKSouboru(url)}
|
||||
width={width}
|
||||
height={height}
|
||||
sizes="(max-width: 900px) 100vw, 800px"
|
||||
|
||||
@@ -5,7 +5,7 @@ import React from 'react'
|
||||
|
||||
import config from '@/payload.config'
|
||||
import type { Media, Product } from '@/payload-types'
|
||||
import { formatujCenu, popisStavu } from '@/lib/format'
|
||||
import { cestaKSouboru, formatujCenu, popisStavu } from '@/lib/format'
|
||||
import './styles.css'
|
||||
|
||||
// Obsah se čte z CMS při každém požadavku — jinak by se úprava položky
|
||||
@@ -86,5 +86,5 @@ function prvniObrazek(polozka: Product) {
|
||||
|
||||
if (!url || !width || !height) return null
|
||||
|
||||
return { url, width, height, alt: media.alt ?? polozka.nazev }
|
||||
return { url: cestaKSouboru(url), width, height, alt: media.alt ?? polozka.nazev }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user