is there any easy way to migrate TCA or Flexform fields for file uploads from type 'group' (upload directly to uploads folder) to 'inline' (FAL) and keep the already uploaded images?
For 6.2 there is this useful extension doing the job: https://typo3.org/extensions/repository/view/conn_falmigration
BACKUP FIRST! This extension will override the TCA of those fields and migrate them to FAL. This should only be a quick fix. A better solution is to check out the migration logics of that extension and implement them for your own purpose including a real change of the TCA in the desired extensions.
Related
I am wondering how I can generate a pdf in an extbase extension. What I wanting to do is the following: On saving a record in the backend also a pdf with the data of my record should be generated an saved in the fileadmin for instance.
I have found frontend solutions for generating pdfs with special fluid viewhelpers primarily, but I need it in the backend when the editor saves a record.
Are there any common solutions in extbase for this?
Generating PDFs has no common solution in TYPO3.
Alas you have the option to hook in most actions to use an additional library to generate a PDF of the data you are processing.
You could find more information here
I'm configuring a new website with TYPO3 v. 9.5.
I would like to configure TCA settings to make it possible to force editors to fill fields in content elements like media or news.
In former times I was able to put this settings into a file typo3conf/extTables.php.
In my investigations I found, that I have to put configurations into a directory Configuration/TCA/Overrides of an extension.
I tested it with the extension tx_news like this:
I put this code in a file called test.php as a test and example.
This code forces the editor to always enter an archive date.
This works for me, but after an extension update, this code might be lost and I cannot configure the fields of core extensions for example to force an editor to always enter a title of a content element.
My question is, how can I store this configurations update save within the configuration environment?
Thank you in advance,
Ralf
Depending on your modifications you need to consider some aspects:
always use a filename according to the table your modifications belong.
so for the news records it should be: Configuration/TCA/Overrides/tx_news_domain_model_news.php
make sure your modifications are loaded after the first initial configuration: make a dependency to the original extension.
I build a TYPO3 Extension. And I use for the TypoScript Folder the Files as .ts. For the IDE PhpStorm is this better I use .ts.
But I see in other Extensions the File as .txt.
What is better?
There was a voting recently at decisions.typo3.org to agree on a file extension for TypoScript files.
This voting relates to how to distinguish between TSconfig (User + Page), TypoScript and defining best practices
to be used completely throughout the TYPO3 Core.
.typoscript was voted for by two thirds of participators. If it‘s really a decision and not a mere poll then that‘s what TYPO3 core will be heading for. Refer to the voting to see further details like how to distinguish between TypoScript and TSConfig.
You should use the file ending .typoscript for newer TYPO3 versions.
This was introduced in TYPO3 8.7, see changelog: Feature: #78161 - Introduce .typoscript file extension
Using .txt was deprecated in 9.3, see Changelog Deprecation: #81686 - Accessing core TypoScript with .txt file extension has been deprecated
As already mentioned, .ts is not such a good idea as it is used for Typescript.
See also the official TypoScript coding guidelines
I use the TypoScript Plug-In from Stefan Galinski in PhpStorm. In preferences I add the following file types:
*.t3c for Constants
*.t3s for Setup
*.ts for TSconfig
So I can load constants and setup files from same folder.
Template Constants
<INCLUDE_TYPOSCRIPT: source="DIR:fileadmin/TypoScript" extensions="t3c">
Template Setup
<INCLUDE_TYPOSCRIPT: source="DIR:fileadmin/TypoScript" extensions="t3s">
Page TSConfig
<INCLUDE_TYPOSCRIPT: source="DIR:fileadmin/TSconfig/Page" extensions="ts">
Images currently are not handled by the extension-builder.
I am looking for a kind of "f:form", where I can store the image file name with the submit function, inside FormFields.html.
If I use f:form.textfield I get in trouble with format.
I already tries
...originalResource.url and
...originalResource.name
I am using TYPO3 7.6.14
How I have to handle this task?
Implementing a File Upload with FAL in Extbase is not that easy. Here is an example extension in Github - mostly I do it like there: https://github.com/helhum/upload_example
But be warned: It's not for beginners...
I am quite new in typo3. I read somewhere
You should never edit the original templates of an extension as those changes will vanish if you upgrade the extension
How to create my own custom template based on bootstrap_package extension? I would like to override some files in parital/layout. It would be great if someone can post like/tutorial.
A folder structure and a simple custom typoscript that implement bootstrap_package for my custom temple would be great help.
The bootstrap package developers already added something for this. It is possible to set different locations, where templates are stored. It also uses a fallback solution, that means if a template is not found, it will fetch the original one from the extension.
Create a directory in the fileadmin directory, for example fileadmin/templates/BootstrapPackage. Inside this directory, create the directories "Templates", "Layouts" and "Partials".
In TYPO3 backend, go to the constant editor of the root page and select everything like the screenshot says:
Set the fields "Layout/Partial/Template Root Path" to your new created directorys (fileadmin/templates/BoostrapPackage/Layouts|Partials|Templates). Save and clear the cache.
Now you can create new templates. If you place an exacly named file like it is named in bootstrap_package/Resources/Private/(Layouts/Partials/Templates)/Page/ , TYPO3 will use the new template instead.