Neos CMS Documentation Release Dev-Master
Total Page:16
File Type:pdf, Size:1020Kb
Neos CMS Documentation Release dev-master The Neos Team June 05, 2015 Contents 1 Getting Started 3 1.1 Installation..............................................3 1.2 User Interface Basics.........................................4 2 Integrator Guide 11 2.1 Content Structure........................................... 11 2.2 Rendering A Page.......................................... 27 2.3 Inside TypoScript........................................... 28 2.4 Eel, FlowQuery and Fizzle...................................... 35 2.5 Adjusting Neos Output........................................ 39 2.6 Creating Custom Content Elements................................. 44 2.7 Content Cache............................................ 51 2.8 Node Type Constraints........................................ 56 2.9 Creating a plugin........................................... 57 2.10 Interaction with the Neos backend.................................. 60 2.11 Content Dimensions......................................... 61 2.12 Data sources............................................. 64 3 Integrators Cookbook 67 3.1 Wrapping a List of Content Elements................................ 67 3.2 Creating a simple Content Element................................. 68 3.3 Customizing the Inspector...................................... 70 3.4 Selecting a Page Layout....................................... 72 3.5 Changing the Body Class with a condition............................. 73 3.6 Rendering a Menu.......................................... 74 3.7 Integrating a JavaScript-based slider................................. 75 3.8 Rendering a Meta-Navigation.................................... 77 3.9 Editing a shared footer across all pages............................... 78 3.10 Extending the Page.......................................... 79 3.11 Rendering special formats (CSV, JSON, XML, ...)......................... 80 3.12 Adding A Simple Contact Form................................... 81 3.13 Creating a Plugin........................................... 83 3.14 Translating content.......................................... 83 4 Developer Guide 85 4.1 User Interface Development..................................... 85 4.2 Testing................................................ 94 4.3 Development............................................. 97 5 Appendixes 99 5.1 Neos Command Reference...................................... 99 5.2 Eel Helpers Reference........................................ 106 5.3 FlowQuery Operation Reference................................... 128 i 5.4 Media ViewHelper Reference.................................... 134 5.5 Neos TypoScript Reference..................................... 137 5.6 Neos ViewHelper Reference..................................... 149 5.7 Release Notes............................................ 162 6 Contributors 181 7 Indices and tables 185 ii Neos CMS Documentation, Release dev-master TYPO3 Neos is a free enterprise web content management system licensed under the GPL. This version of the documentation covering Neos dev-master has been rendered at: June 05, 2015 Contents 1 Neos CMS Documentation, Release dev-master 2 Contents CHAPTER 1 Getting Started 1.1 Installation Tip: TYPO3 Neos is built on top of the TYPO3 Flow framework. If you run into technical problems, keep in mind to check the TYPO3 Flow documentation for possible hints as well. 1.1.1 Requirements TYPO3 Neos has at least the same system requirements as TYPO3 Flow. You can find them in the TYPO3 Flow Requirements Documentation. 1.1.2 Fundamental Installation 1. First you need to install the dependency manager Composer (if you don’t have it already): curl -sS https://getcomposer.org/installer | php By issuing this command Composer will get downloaded as composer.phar to your working directory. If you like to have composer installed globally, you can simply move it to a directory within your $PATH environment. mv composer.phar /usr/local/bin/composer Note: If you are on Windows please refer to the offical documentation on how to install Composer on Windows 2. Go to your htdocs directory and create a new project based on the TYPO3 Neos base distribution: cd /your/htdocs/ php /path/to/composer.phar create-project typo3/neos-base-distribution TYPO3-Neos Composer will take care of downloading all dependencies for running your TYPO3 Neos installation to the directory TYPO3-Neos. You can safely delete the vcs files by answering ‘Y’ to the question ‘Do you want to remove the existing VCS (.git, .svn..) history? [Y,n]?’. 3. Next set up a virtual host inside your Apache configuration. Set the DocumentRoot to the Web directory inside the TYPO3 Neos installation. NameVirtualHost *:80 # if needed <VirtualHost *:80> DocumentRoot "/your/htdocs/TYPO3-Neos/Web/" # enable the following line for production context 3 Neos CMS Documentation, Release dev-master #SetEnv FLOW_CONTEXT Production ServerName neos.demo </VirtualHost> Make sure that the mod_rewrite module is loaded and restart apache. For further information on how to set up a virtual host with apache please refer to the Apache Virtual Host documentation. 4. Add an entry to /etc/hosts to make your virtual host reachable: 127.0.0.1 neos.demo Make sure to use the same name you defined in ServerName in the virtual host configuration above. 5. Set file permissions as needed so that the installation is read- and writeable by the webserver’s user and group: sudo ./flow core:setfilepermissions john www-data www-data Replace john with your current username and www-data with the webserver’s user and group. For detailed instructions on setting the needed permissions see TYPO3 Flow File Permissions Note: Setting file permissions is not necessary and not possible on Windows machines. For Apache to be able to create symlinks, you need to use Windows Vista (or newer) and Apache needs to be started with Administrator privileges. 6. Now go to http://neos.demo/setup and follow the on-screen instructions. 1.1.3 The TYPO3 Neos Setup Tool 1. A check for the basic requirements of TYPO3 Flow and Neos will be run. If all is well, you will see a login screen. If a check failed, hints on solving the issue will be shown and you should fix what needs to be fixed. Then just reload the page, until all requirements are met. 2. The login screen will tell you the location of a file with a generated password. Keep that password in some secure place, the generated file will be removed upon login! It is possible to have a new password rendered if you lost it, so don’t worry too much. 3. Fill in the database credentials in the first step. The selector box will be updated with accessible databases to choose from, or you can create a new one. Tip: Configure your MySQL server to use the utf8_unicode_ci collation by default if possible! 4. In the next step a user with administrator privileges for editing with TYPO3 Neos is created. 5. The following step allows you to import an existing site or kickstart a new site. To import the demo site, just make sure it is selected in the selector box and go to the next step. To kickstart a new site, enter a package and site name in the form before going to the next step. If you are new to Neos, we recommend to import the existing demo site so you can follow the next section giving you a basic tour of the user interface. 6. If all went well you’ll get a confirmation the setup is completed, and you can enter the frontend or backend of your Neos website. 1.2 User Interface Basics 1. Toggle button for the Menu 2. The Navigate component 4 Chapter 1. Getting Started Neos CMS Documentation, Release dev-master 3. The Edit/Preview Panel 4. The Page tree 5. Publish button(s) 6. The Property Inspector 7. The Structure tree 8. The content canvas 9. Discard / Apply changes 1.2.1 Toggle button for the Menu Show or hide the Module Menu using this button. 1.2.2 The Navigate component Using the Navigate component you can conveniently find your way through your contents. See ‘The Page tree’. 1.2.3 The Edit/Preview Panel The Edit/Preview Panel gives you the possibility to switch between the (default) ‘In Place’ editing mode to and from the ‘Raw Content’ editing mode. It also contains the Preview section where you can choose between customizable presentation modes, i.e. a print style and a default Desktop style. 1.2. User Interface Basics 5 Neos CMS Documentation, Release dev-master 6 Chapter 1. Getting Started Neos CMS Documentation, Release dev-master 1.2. User Interface Basics 7 Neos CMS Documentation, Release dev-master Fig. 1.1: The TYPO3 Neos start page 8 Chapter 1. Getting Started Neos CMS Documentation, Release dev-master 1.2.4 The Page tree The Page tree is filterable and searchable and can be edited inline. 1.2.5 Publish button(s) These publication buttons aggregate your changes which you can publish at your chosen time. 1.2.6 The Property Inspector The Property Inspector gives you detailed property editing options for the chosen nodetype, whether this be a page or a content element. 1.2.7 The Structure tree The Structure tree is a nodetype tree which gives you detailed information of how your content is structured. It gives you information about which type, its position and its nesting level. This can also be used to navigate the content of a page. 1.2.8 The content canvas The content canvas is where you can add/edit your content. 1.2. User Interface Basics 9 Neos CMS Documentation, Release dev-master 1.2.9 Discard / Apply changes TYPO3 Neos saves your changes on the fly as much as possible. When editing properties you must apply or discard