Code Monkey home page Code Monkey logo

typo3cms-example-extensionmanual's Introduction

TYPO3 Extension Manual Template

This is a template for a TYPO3 extension manual to help developers with documentation. The template provides a structure that a developer can use, as well as many useful snippets and examples.

The documentation is written in reST format and follows the general TYPO3 documentation standard and its recommended file structure.

Repository

https://github.com/TYPO3-Documentation/TYPO3CMS-Example-ExtensionManual

Read online

https://docs.typo3.org/m/typo3/guide-example-extension-manual/main/en-us/

typo3cms-example-extensionmanual's People

Contributors

alagts avatar alexander-nitsche avatar brotkrueml avatar danielsiepmann avatar davidbruchmann avatar fabarea avatar flicstar avatar franzholz avatar froemken avatar garvinhicking avatar josefglatz avatar liayn avatar linawolf avatar masi avatar mbrodala avatar susannemoog avatar sypets avatar tomwarwick avatar xperseguers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

typo3cms-example-extensionmanual's Issues

Rethink use of pseudo-placeholders, e.g. {extension.name}

Docs currently contains some placeholders such as {extension.name} in Settings.cfg which look like they will be replaced automatically, but this is not the case.

So, I think we should not use tags in braces which look like they will be replaced when they are not. Or, make it possible to automatically replace some variables.

Improve user experience

This issue was created, based on feedback from the community.

People find it disturbing to click multiple times on "next" to find the basic information inside an extension manual. We should think about changing the example manual to change this.

The "What does it do" should be on the first page. The TOC should not be rendered at all, as this duplicates the TOC in the sidebar.

Also Versions and further detail information might be placed in an appendix. The version is already rendered in the top left corner on each page, same goes for the extension name.

Related:

Change indenting to spaces?

In this repo, tab is used to indent in the .rst files.

But, we document to use spaces (3) in our Coding Guidelines and the .editorconfig contains this convention as well.

Ok, if I change this? Anything else I must consider?

Table tx_jobapplications_domain_model_ttcontent doesn't exist

Hi, I get the following error message (only if indexing API is activated) when saving a job. The table really does not exist in the DB and is not created via the analysis database.

Core: Exception handler (WEB): Uncaught TYPO3 Exception: #1472074485: Table 'db.tx_jobapplications_domain_model_ttcontent' doesn't exist | TYPO3\CMS\Extbase\Persistence\Generic\Storage\Exception\SqlErrorException thrown in file /typo3_src-10.4.5/typo3/sysext/extbase/Classes/Persistence/Generic/Storage/Typo3DbBackend.php in line 375. Requested URL:

Allowed memory size of nnnn bytes exhausted

Hi,
trying to send the command "abgeschlossene löschen" in TYPO3 BE I'll get;

[24-Sep-2023 10:42:31] WARNING: [pool typo3-11] child 3446167 said into stderr: "NOTICE: PHP message: PHP Fatal error: Allowed memory size of nnnn bytes exhausted (tried to allocate 20480 bytes) in typo3_src/typo3_src-11.5.30/typo3/sysext/extbase/Classes/DomainObject/AbstractDomainObject.php on line 218"

https://wwww.host.de/typo3/module/tools/TaskqueueTaskqueue?
token=53645615038777ecd70e161a5a6bae5b1f2fdb80
&tx_taskqueue_tools_taskqueuetaskqueue%5Baction%5D=deleteFinished
&tx_taskqueue_tools_taskqueuetaskqueue%5Bcontroller%5D=Task

At this moment our Taskq contains 102.480 tasks

    /**
     * action delete finished tasks
     *
     * @throws StopActionException
     * @throws UnsupportedRequestTypeException
     * @throws IllegalObjectTypeException
     */
    public function deleteFinishedAction(): void
    {
        $tasks = $this->taskRepository->findFinished();
        $this->addFlashMessageForDeletion($tasks);
        foreach ($tasks as $task) {
            $this->taskRepository->remove($task);
        }
        $this->redirect('list');
    }

Maybe it would be better so create & call a taskRepository->deleteFinished() Method.
Something like this - untested:

    /**
     * delete all finished tasks
     * @return int
     */
    public function deleteFinished(): int
    {
        $queryBuilder = $this->connectionPool->getQueryBuilderForTable('tx_taskqueue_domain_model_task');
        $affectedRows = $queryBuilder
            ->delete('tx_taskqueue_domain_model_task')
            ->where(
                $queryBuilder->expr()->eq('status', TaskInterface::FINISHED)
            )
            ->executeStatement();
        return count($affectedRows);
    }

Revisit structure

What should be in the sample extension manual? What should be added / removed?

Related:

  • start page #24

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.