How to add Typo3 Extensions to a page? - typo3

I googled for quite some time now and i cannot find a solution for such an easy beginner-problem.
I used the Typo3 Extension Builder to build a test-extension in Extbase. Now i want to use this and include it into one of my pages in the page tree structure to actually see if it works. When browsing the folder structure i can clearly see that the Domain model, the Controllers and all the views have properly been generated. But... How can i tell my page to include it and execute it?
I tried things like including the auto generated typescript into the templates of the pages but nothing works.
Thanks!

In Extension Builder make sure that you added "Frontend plugin" on the left pane. If you'll do it properly you will be able to add this plugin via CE "General Plugin" and then via field "Select plugin"

Sounds like you struggle on a more general level here.
In order to get the output of your Extension in the Frontend you have to assure the following steps:
Set up general Configuration, so that you can see the output of standard content elements in the frontend.
Install your extension and include its TypoScript.
Make sure you have a Plugin configured in your ext_localconf.php and registered in your ext_tables.php.
In the backend, create a new content element and choose "plugin" as its type.
Choose your registered plugin and save.
You should now see output of your extension in the frontend.

Related

Where do I implement the settings html of my TYPO3 extension?

I am currently developing my own TYPO3 extension (in v 9.5.11) and I want to know where I have to reference the Html file that is supposed to open when you click on Admin Tools-->MyExtension in the TYPO3 sidebar.
This completely depends on how you integrated your extension; there are at least two (vanilla, Extbase) ways to make such modules. Where your template file (which is Fluid, not pure HTML) exists depends on the integration and your TypoScript configuration that defines template paths, but by default it would be in your extension, in the sub path Resources/Private/Templates/$controllerName where $controlerName is the name of the controller that renders your plugin.
Note that template paths for frontend and backend are configured separately.
If you use the vanilla way of making backend modules you most likely need to define this template manually, by setting it in the view, in which case it can be placed anywhere you like (but should of course be inside your extension).
Have a look at system extension extensionmanager, where the backend module has some registered controller classes, and methods in ext_tables.php. fx class ListController, with indexAction, unresolvedDependenciesAction, terAction, ... and more methods:
'List' => 'index,unresolvedDependencies,ter,showAllVersions,distributions',
ListController class like all other controller classes uses FLUID views, which is looking for HTML templates inside Resources/Private/Templates/<CONTROLLERNAME>/...
For ListController->indexAction it would be Resources/Private/Templates/List/Index.html where you can use TYPO3 FLUID functionality.
See also https://docs.typo3.org/m/typo3/reference-coreapi/master/en-us/ApiOverview/BackendModules/TemplateClass/Index.html
Well, It is always recommended to write your question clearly and bit more detail so people can understand quickly.
Anyway as I understand the question, you're talking about view resource file. If you have created your extension with Extension builder, your action file will automatically be generated in the Resource folder.
BE module directory will be Resources/Private/Backend See the example here.
In the TypoScript, you will get the source path this will something look like this.
To check the backend default action, you can see the backend module configuration here. From here you will get better idea which action will be call by default (Probably List action)
In this directory, you will have all the HTML you need. Hope this will help you!

How to change backend layout in Typo3 7.2?

I am new to typo3, i am trying to create a new backend layout for my home page.I need add few custom sections to edit contents.I am not able to find option to do so.
TYPO3 7.2 is out of support and has know security issues. Please update to 7.3 at least.
You can create backend layout records in any folder in the page tree. To select those backend layouts, you have to add this folder as the general record storage in the page properties of the page where you want to use your backend layout.
I suggest you take a look into the Getting started tutorial which will walk you through your first steps.
http://docs.typo3.org/typo3cms/GettingStartedTutorial/
In case you use a distribution, it might be that the backend layout is added in another way, e.g. via TSconfig or directly using PHP. Please consult the according documentation of the distribution in this case.
Figured out myself.
Go to List in Web, then click on add new + icon, then select Backend Layout under System Records.

How to place TYPO3 frontend output in anywhere

I am new to TYPO3 and creating a TYPO3 extension. Extension can be added to a given place by the BE using the wizard. No problem.
My question is how can I add/call extension manually any place I want. For example among text.
What i mean is like Joomlas Mambots. Call the extension inside {myextentionName} among text for example.
Please any idea/help with an example is kindly appreciate.
You can find the TypoScript definition for each plugin below tt_content.list.20.<plugin-key>.
On top of that, most plugins provide a fully working version below plugin.<ext-key>.
If all fails, you can use the USER object to call the plugin directly. You will find an example in one of the above paths, because that is what the plugins to after all.
You can use typoscript tree and plugin keyword with the extension name for example plugin.xxxx.pi1.

TYPO3: Custom options for "insert plugin" in backend

I am learning TYPO3 and extensions, for now, I've created a test extension about image uploading, handling and showing.
I have done the Backend for upload a new image, show a list, and edit image properties (once selected). This part is already implemented and working.
Now I am missing the "include" part, I mean, to insert an image in page via Insert Plugin on BackEnd.
My problem: When I select insert plugin, and I manually select my registered plugin, I want to render there a fluid template with options, image list, and so.
These options are for the user to select an image, a size, and so, for it to be shown in selected page.
I don't know which method have typo3 for showing templates in that part, so I am requesting a hint from where to config a template to be used there by TYPO3.
Note: This is not about asking implementations, just a hint to start and implement it myself.
You should not code that on your own.
I guess you are looking for TCA. In special for your Plugin you are looking for "flexforms". I guess this wiki page can help you get started with some examples.

TYPO3 does not resolve url correctly

I'm pretty new to TYPO3 and currently stuck with the following issue:
I copied the templates from another webpage that is currently in business.
When I'm on the startpage of my homepage (www.domain.com) and click on one of the links it contains I always get an error 404. The link that is generated looks like this.
http://www.domain.com/testpage.440.0.html
So I guess something like RealUrl was in use on the webpage that I copied from? Do I understand this right? I don't see that RealUrl is installed though.
However If i manually change this link to
http://www.domain.com/?id=440.0.html
the site is being created.
How does Typo3 know to generate a page when it receives the first version of these two links?
Does not really look like a standard out-of-the-box REAL URL url. That would rather have been /testpage-404.html . So maybe the problem is somewhere else, could be:
simulate static (check if that extension is running). A common mistake is to run real url an simulate static at the same time. If you do not need speaking urls for the moment, just uninstall simulate static.
make sure you add a domain to your shortcut. Use the the list modul and select the root shortcut. Then click create new record, select domain. and enter your domain there. Flush all the caches and try again.
If you'd post your TS Code (of the root shortcut page) here, I could probably tell what's going wrong.
real url configuration typically use .htaccess files.. maybe that file still contains information from the original destination.
check if the root ts contains some baseUrl statement
Which version of TYPO3 are you using?
HTH, but feel free to post more infos.
If your typoscript template is expecting to find realurl and its not installed as a plugin, that could be the cause. You'll need to either install it, or find the settings in the TS template and remove them.
Try the template object browser to look for it (use the template tool, click to the site root, then use the drop down menu in the r/h pane to choose the Template Obect Browser.)
How does Typo3 know to generate a page when
it receives the first version of these two links?
Any page request that it doesn't understand will give a 404 error.