Since today i used adapter static for PHP sites (due to hosting only providing that option). And manually editing the prerendered HTML file or adding my custom API Endpoints.
This project aims to blend Sveltekit and PHP and keep all that magic of svelte (preloads and ssr **).
npm i --save-dev sveltekit-php
pnpm add -D sveltekit-php
In your svelte.config.js import the adapter
import adapter from "sveltekit-php";
In order to corrctly use the PHP-Adapter, you should put this code into your root +layout.server.js.
export const prerender = true;
export const ssr = true;
export const trailingSlash = "always";
Create a +page.server.php or +layout.server.php
Where you would normally use a +page.server.js or +layout.server.js, you can use a +page.server.php or a +layout.server.php file.
(Note: layout.server.php fetches all parent data and can not be resetted.)
Write your load function.
<?php
function load($param){
$routeid = $param["routeid"];
$parentdata = $param["parentdata"];
return [
"message" => "Hello by PHP Server"
];
}
?>
Planed to be implemented
Don't know how to fix yet
Not planing to implement
Preloads work fine, but since the pages are prerendered the default data (in +page.server.js if you choose to use it) can be seen for a split second.
The server generated data (by PHP) is already inlined into the document to be rendered as fast as possible.
Maybe you have the solution to this problem.