The search bar in the page header is back (SearchbarController, lib.searchBar and lib.searchBarCollapsed), in the Subpage, SubpageSidebarRight and Detail layouts as on TYPO3 10; product pages get the collapsed bar and its toggle button in the main navigation again. - The bar takes no arguments, so it is the same on every page of a site and cacheable. Page types 1706/1707 (/searchbar, /searchbar-collapsed on the ep-reisen root, also under /en/) render it alone for the static pages, which replace their exported bar with it via htmx. The suffixes have no leading slash: on the root page the route path has none, so "/searchbar" would never match (as /form and /snowreport do not there either). - The form sends dateFrom, dateTo, pax, destinationType, destinationUid and priceRange by GET to the search page instead of POSTing to processSearch: no signed fields and no redirect, and URLs of about 100 characters instead of about 870. SearchController reads them (SEARCHBAR_PARAMETERS, excluded from the cHash; the results are not cached) and drops anything but a real Y-m-d date, which made DateUtility::formatDateRange() throw. processSearch is removed. - The date range label is empty without arguments, so the template no longer needs ep:dateRange. Compared with TYPO3 10: the bar's markup matches apart from the form (open, collapsed, /en/); seven searches by GET load the same filter settings and hit counts as the TYPO3 10 POST. The static pages get the island from the exporter in EP/website, see .ddev/plans/static-export-searchbar-island.patch (local only). Co-Authored-By: Claude Opus 5.5 <[email protected]>
TYPO3 CMS Base Distribution
Get going quickly with TYPO3 CMS.
Prerequisites
- PHP 8.2
- Composer
Quickstart
composer create-project typo3/cms-base-distribution project-name ^13cd project-name
Note that this distribution installs most, but not all of the TYPO3 CMS core extensions. Depending on your need you might also want to install other TYPO3 extensions from packagist.org.
Setup
To start an interactive installation, you can do so by executing the following command and then follow the wizard:
composer exec typo3 setup
Setup unattended (optional)
If you're a more advanced user, you might want to leverage the unattended installation. To do this, you need to execute the following command and substitute the arguments with your own environment configuration.
export TYPO3_SETUP_ADMIN_PASSWORD=$(tr -dc "_A-Za-z0-9#=$()/" < /dev/urandom | head -c24)
composer exec -- typo3 setup \
--no-interaction \
--server-type=other \
--driver=sqlite \
--admin-username=admin \
--admin-email="[email protected]" \
--project-name="My TYPO3 Project" \
--create-site="http://localhost:8000/"
echo "Admin password: ${TYPO3_SETUP_ADMIN_PASSWORD}"
Development server
While it's advised to use a more sophisticated web server such as Apache 2 or Nginx, you can instantly run the project by using PHPs` built-in web server.
TYPO3_CONTEXT=Development php -S localhost:8000 -t public- open your browser at "http://localhost:8000"
Please be aware that the built-in web server is single threaded and only meant to be used for development.
Next steps
License
GPL-2.0 or later