Adjust TYPO3 backend in five minutes

In the decision-making phase for choosing a content management system, one often hears about TYPO3 that the backend is not intuitive and much too overloaded for the editor. That there are too many options and fields that you would not use when creating content and lead to the editors being overwhelmed.

I have also seen many backends in which the backend was not adapted for the editors or even no user groups with corresponding roles were used. And thus all users with administration rights were on the go in the backend.

In my opinion, this has to do with the steep learning curve of TYPO3, which puts obstacles in the way of beginners. But once you understand the concept of configuring TYPO3, all doors are open to making the backend as simple as possible. And only with the fields and options that you need to create content.

There is a fairly simple way to achieve this: hiding fields using TCEFORM, setting default values ​​for fields with TCAdefault and consistently using user groups. Admins are really just admins and not to be used for creating content. With a properly set up TYPO3, you should never have to log in with an administrator account. ;-)

In fact, all fields and field values that are not needed are also hidden for administrators. If a field doesn't affect the behavior of the element, why should it be visible in the backend as well?

It starts in the page tree, where only page types that can be used are visible. Well, that can unfortunately only be set on a user basis, so that an administrator can see all page types of the installation, but for the user groups this can be restricted even further and then it is better for a multi-domain installation, in which this configuration is between the pages fundamentally different, working with different editors/editor groups.

With

options.pageTree.doktypesToShowInNewPageDragArea

you can specify the UIDs of the doktypes that are visible there. In the case of the screenshot, these would be the UIDs 1 (standard page) and 137 (blog post). In the page properties you can achieve this in a slightly different way for the doktype field:

TCEFORM {
    pages {
        doktype {
          removeItems := addToList(3,4,6,7,138,199,254,255)
        }
    }
}

All UIDs that you no longer want to have in the selection field are specified here.

In a further step, all unnecessary content elements and plugins that are part of an installed extension but are not needed are hidden throughout the system. For example, you will never use all of the menu items in an installation. This means that these do not have to be seen by an admin and in the user groups you restrict the maintainable content elements again anyway.

Again, the configuration via TCEFORM helps here, this time we use a few entries for the table tt_content:

TCEFORM {
    tt_content {
        CType {
            removeItems := addToList(header, text, image, textpic, bullets, table, uploads)
            removeItems := addToList(menu_abstract, menu_categorized_content, menu_categorized_pages, menu_pages, menu_subpages, menu_recently_updated, menu_related_pages, menu_section, menu_section_pages, menu_sitemap, menu_sitemap_pages)
            removeItems := addToList(html, div, hortcut, form_formframework)
        }

        list_type {
            removeItems := addToList(blog_latestposts, blog_authors, blog_authorposts, blog_tag, blog_archive, blog_demandedposts, blog_commentform, blog_comments, blog_footer, blog_header, blog_metadata, blog_relatedposts, blog_sidebar)
        }
    }
}

 

In a further step, all fields in the page properties are hidden for the pages table.
This can be achieved fairly quickly by setting the disabled property to 1 for the corresponding field:

TCEFORM {
    pages {
        nav_title.disabled = 1
        subtitle.disabled = 1
        sitemap_changefreq.disabled = 1
        sitemap_priority.disabled = 1
        og_title.disabled = 1
        og_description.disabled = 1
        og_image.disabled = 1
        ...
    }
}

The whole thing is then refined via the user groups. In larger marketing departments or editorial offices, there may be the SEO department, which may then only be allowed to edit the SEO-relevant fields of the pages, etc.

The same game is then played with the fields of the content elements, which are restricted system-wide and then further refined using dedicated user groups.

TCEFORM {
    tt_content {
        colPos.disabled = 1
        header_position.disabled = 1
        date.disabled = 1
        header_link.disabled = 1
        subheader.disabled = 1
        imagewidth.disabled = 1
        imageheight.disabled = 1
        imageborder.disabled = 1
        imageorient.disabled = 1
        ...
    }
}

Another important configuration revolves around the CKEditor. This should only allow the necessary styles and elements such as lists etc. that are also present in the style sheet. The same applies to the link handler wizard or the options when inserting a table in the CKEditor. But that's a whole chapter in itself...

And TYPO3 wouldn't be TYPO3 if there wasn't at least one other way for the suggestions listed above. Because nobody is prevented from implementing the entire configuration via TCA overrides. Have lots of fun with it!

Comments

No Comments

Write comment

* These fields are required