{"id":19114854,"url":"https://github.com/namelesscoder/inline_page_editing","last_synced_at":"2025-07-02T20:33:05.396Z","repository":{"id":57023482,"uuid":"66173715","full_name":"NamelessCoder/inline_page_editing","owner":"NamelessCoder","description":"TYPO3 Extension - Inline editing of content elements in backend page module","archived":false,"fork":false,"pushed_at":"2020-04-22T08:22:02.000Z","size":501,"stargazers_count":21,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-06-28T09:12:32.161Z","etag":null,"topics":["inline-editing","typo3-cms","typo3-extension"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NamelessCoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-21T00:14:49.000Z","updated_at":"2022-06-15T10:26:35.000Z","dependencies_parsed_at":"2022-08-23T13:50:20.572Z","dependency_job_id":null,"html_url":"https://github.com/NamelessCoder/inline_page_editing","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/NamelessCoder/inline_page_editing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NamelessCoder%2Finline_page_editing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NamelessCoder%2Finline_page_editing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NamelessCoder%2Finline_page_editing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NamelessCoder%2Finline_page_editing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NamelessCoder","download_url":"https://codeload.github.com/NamelessCoder/inline_page_editing/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NamelessCoder%2Finline_page_editing/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263210651,"owners_count":23431175,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["inline-editing","typo3-cms","typo3-extension"],"created_at":"2024-11-09T04:44:43.581Z","updated_at":"2025-07-02T20:33:05.367Z","avatar_url":"https://github.com/NamelessCoder.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"TYPO3 Extension: Inline Page Editing\n====================================\n\nConverts the content element preview area into a click-to-edit integration. Clicking the content element\nopens an edit form with a select set of form fields which can be defined in TCA.\n\nCredits\n-------\n\nThe main body of work for this extension was sponsored by [Systime A/S](https://systime.dk) who publish\ninteractive educational material. They required a usability improvement for their many editors - which they\ncommissioned me to execute and then kindly allowed me to contribute this back to the community in the form\nof this extension. Thanks, Systime!\n\nWhat does it do?\n----------------\n\n[It does inline editing in the TYPO3 backend](Resources/Public/Images/inline-edit-example.gif)\n\n[It also presents the new content wizard as an in-page drop-down menu](Resources/Public/Images/inline-new-content-example.gif)\n\nInstallation\n------------\n\nThe extension is only available for installing using Composer:\n\n```bash\ncomposer require namelesscoder/inline-page-editing\n```\n\nAfter requiring the package with Composer you must activate the extension key in Extension Manager, or call:\n\n```\n./typo3/cli_dispatch.phpsh extbase extension:install inline_page_editing\n```\n\nThe extension has no dependencies (except for TYPO3 CMS) and works for TYPO3 CMS 7.6 LTS and upward.\n\nConfiguration\n-------------\n\nThe configuration for this extension exists exclusively in TCA and any modifications or additions must be\nadded to TCA as well. The extension ships with core defaults in `Configuration/TCA/Overrides/tt_content.php`\nand these defaults can be changed and extended either by a second extension (recommended) which defines\n`inline_page_editing` as a dependency extension (to cause correct loading order); alternatively it is\npossible to override these in `typo3conf/AdditionalConfiguration.php` (which you can also write to using\nthe `lowlevel` system extension's backend module).\n\nThere are two possible target definitions which require different configurations. One for regular content\nelement types and one for plugins (which share one content type and have an additional sub type).\n\nFor regular content types:\n\n```php\n$GLOBALS['TCA']['tt_content']['types']['textmedia]['inlineEditedFields'] = 'header,bodytext';\n```\n\nNote that the `types` array is used and the `CType` is the index. The array (which normally contains just\n`showitem` with a list of fields the content type shows) receives an added `inlineEditedFields` index which\ncontains a plain CSV list of TCA field names that must be shown, in the order to show them.\n\nAny content type can be configured, including those you add yourself. However, default configuration is only\nprovided for core content types - to enable editing for custom content types you add configuration for each.\n\nAnd for plugins (`list_type`) sub-types:\n\n```php\n$GLOBALS['TCA']['tt_content']['types']['list']['my_plugin']['inlineEditedFields'] = 'header,pi_flexform';\n```\n\nNote the additional index `my_plugin` which you must set to your plugins so-called signature. For Extbase\nplugins the signature is generated using `extensionkey_pluginname` Where `extensionkey` is the target\nextension key without underscores - and `pluginname` is the name of the plugin as defined in the plugin\nregistration (for legacy reasons you often see `Pi1` and so on in these names).\n\nIf you are in doubt about which plugin signature a particular plugin uses you can insert an instance, note\nthe UID of the content element and look up the `list_type` value in the database directly.\n\nKnown issues\n------------\n\nRemarkably enough there are no major conflicts; rich text editing works, hooks will still trigger, access\nrestrictions (exclude fields) are respected, record locking/unlocking happens correctly and TCA overrides\nare fully supported, as are custom fields added by extensions.\n\nThere are however some minor issues stemming from the framework integration:\n\n* TCA `displayCond` is not respected due to the way TYPO3 works when editing a list of specific columns.\n  This behavior matches what happens when you click the top-of-column edit icon in the \"list\" module to edit\n  a specific column of all shown records and can be considered per-design, albeit not fully intuitive.\n* Previews had to be recreated for some content types, causing them to display slightly different from the\n  normal content previews. The technical reason for this is the HTML DOM structure that is output when\n  generating custom previews vs. letting the core generate them: nesting is different when a hook is not\n  responsible for rendering. A fix can be expected for this in the future.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamelesscoder%2Finline_page_editing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnamelesscoder%2Finline_page_editing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamelesscoder%2Finline_page_editing/lists"}