Moving site form typo3 to concrete5 - typo3

Is there any other way than copy paste text, to move content from typo3 to concrete5?
Best Regards
Mats Krüger

Maybe, if your typo3 page is simple/big enough, it's possible/worth to write a php script that gets data from typo3's database, manipulates and writes into concrete5's. Database logic seems to be quite different though, so it can be tricky.

Without any information about the structure you can import into concrete5 it is difficult to answer. But there are some general possibilities to export data from TYPO3.
There is an Extension l10nmgr which is desined to output TYPO3 content for translation processes. Perhaps you can use the XML and transform it?
You could just write an TypoScript Template which creates an XML File with tags you need. It should be easy to export the build in content elements with that.
Or just have a look at the database and write an connector as kraabus mentioned.

Related

Creating a pdf in an TYPO3 extbase extension on saving a record

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

Howto to configure TCA settings and save them globaly

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.

What's the best way to use CSV source data in a list component?

Disclaimer: I am not an AEM developer, I'm filling in on a project, so forgive me if I am missing the obvious.
I have a page template that will contain a component that will show a list of locations, this template will be used for many city pages.
I'm trying to figure out the best way to get the content into the JCR or read it using a script from a CSV file.
Are there any out-of-the box or open source components out there that can accomplish this?
There are several ways to accomplish your task. The easy part should be rendering the information. You would usually implement a Sling model or a class extending WCMUse, access the repository via the Sling API and render the resources via Adobe HTL. The resources being rendered have to be selected of course: write a Servlet which provides an interface to the resources and use an adequate form element in the component's dialog.
The hard part consists of two parts:
Perhaps just upload the file, process the data and by using the Sling API for resource creation, you can write the data into the repo. You could also utilise the DAM for such tasks and implement a workflow.
Depending on the amount of data, you might want to save the data as JSON string as property of a node.
I hoped that helped a bit.
"Are there any out-of-the box or open source components out there that can accomplish this?"
Simple answer: NO
While there are several libraries that can help you parse CSV files, storing it in JCR depends completely on your project. The structure can be arbitrary or (in a brute force way) you can just store the CSV file as data in your node but that may not be useful.
Depending on how you plan to use the data, it may be useful and optimal to save it in a relevant hierarchy for your project.

textbox/form saved and reloaded

I have a question about textboxes or forms. I don't have any experience with them.
I would like to have a textbox/form where the user can type/copy text too.
There should be a save button and the saved text should be loaded and be editable again.
This isn't an internet application, so I don't need to specify a database of users.
Searching the web got me a lot of partial asp/.net/php solutions. I don't really know much of these.
My question is, would this be possible? And where should I start?
Thanx
I would use PHP for this, if you're unfamiliar there are some great learning resources at W3 Schools PHP tutuorial as well as the documentation at PHP.net you'll want to write an HTML form that submits to a php script. In this script you can save text to a file using the fwrite() function and load saved text using fopen(). Definitely have a look through the w3 Schools php guide if you're new to this.

How to build an inline translation system similar to Magento's

I am working on a Zend Framework, MVC, enterprise website project. I would like to develop a friendly translation system with the ability to translate each word according its context (sometimes same word have different translation).
Zend Framework uses Zend_Translate for i18n and localization. We have also seen Magento's (which uses ZF) inline translation system, where users can translate pages directly.
We want to know how this inline translation system works, so that we can build a similar system with improvements.
Where are translations stored: in the database or in CSV files?
How does the system know to fetch translations for the same word when tranlsated differently by the user on different pages?
How should we build a page to support inline translation?
How does the system handle static text vs. dynamic (database-driven) text?
Inline translation seems like it would make the site very slow. How does Magento solve this problem?
Please if you have more points that should be explained, write them. Thanks
Starting from the beginning here (in the future, this is probably more than one logical question):
Magento stores basic translations (provided by the programmer) in CSV files, but inline translations are stored in the database.
Magento's translations operate on entire strings, not words. By providing an entire sentence worth of context for translations, idiomatic translations are achievable. The tradeoff is obviously that every sentence must be translated, rather than every word.
Magento's answer to this is to wrap all localizable strings in a call to the localizer. Magento templates usually look something like this (the double-underscore function maps to the "translate into the current locale" function):
print $this->__("Please translate this string");
Dynamic text (as in product descriptions) in Magento is often not translated, but if you want to do so, it's as simple as passing the right string to the translator, like this:
print $this->__($someString);
It's unlikely that translation will make or break your site (look to your DB queries for most performance problems), but this is a legitimate question nonetheless. Magento does a few things to help. First, it stores serialized versions of the CSV files in a cache, so that reading CSVs is made more efficient. Secondly, Magento offers page caching so that an entire page's output can be stored (assuming that it will render identically), as well as block-level caching for smaller bits of a page. Between these you're in good shape for the most part.
Hope that helps!
Thanks,
Joe