TYPO3 — популярная система управления контентом (CMS), известная своей гибкостью и обширными возможностями. Одним из важнейших компонентов TYPO3 является PageTree, иерархическое представление страниц в CMS. Хотя PageTree предоставляет визуальный обзор структуры сайта, по умолчанию он не отображает идентификаторы страниц. В этой статье блога мы рассмотрим различные методы отображения идентификаторов в дереве страниц и поделимся некоторыми советами по эффективной навигации. Итак, приступим!
Метод 1. Использование расширения PageTree:
Расширение PageTree — это удобный инструмент, который расширяет внутренний интерфейс TYPO3, отображая идентификаторы страниц в PageTree. Чтобы включить его, выполните следующие действия:
- Войдите в серверную часть TYPO3.
- Перейдите к модулю «Диспетчер расширений».
- Найдите «PageTree» в списке расширений.
- Установите и активируйте расширение PageTree.
- После активации PageTree начнет отображать идентификаторы страниц рядом с заголовками.
Метод 2. Настройка внутреннего макета:
Если вы предпочитаете более индивидуальный подход, вы можете изменить макет серверной части для отображения идентификаторов страниц. Вот как:
- Войдите в серверную часть TYPO3.
- Перейдите в модуль «Интернет» и выберите «Шаблон» в раскрывающемся меню.
- Выберите шаблон, который хотите изменить, и нажмите значок «Изменить всю запись шаблона».
- В коде шаблона найдите раздел, отвечающий за отображение PageTree.
- Добавьте следующую строку кода в раздел рендеринга PageTree:
tt_content.menu.20.pages.displayUidInLink = 1Этот код сообщает TYPO3 отображать идентификаторы страниц в дереве страниц.
Метод 3: использование TypoScript:
Язык конфигурации TypoScript в TYPO3 позволяет настраивать различные аспекты CMS. Вы также можете использовать TypoScript для отображения идентификаторов страниц в PageTree. Вот как:
- Войдите в серверную часть TYPO3.
- Перейдите в модуль «Интернет» и выберите «Шаблон» в раскрывающемся меню.
- Выберите шаблон, который хотите изменить, и нажмите значок «Изменить всю запись шаблона».
- В коде шаблона найдите раздел «Константы».
- Добавьте следующую строку кода в раздел «Константы»:
page = PAGE page.10 = TEXT page.10.data = page:uid page.10.wrap = ID: |Этот фрагмент TypoScript извлекает UID (ID) страницы и оборачивает его префиксом «ID:».
Метод 4. Создание собственного серверного модуля:
Для опытных пользователей создание собственного внутреннего модуля может предоставить больший контроль над отображением PageTree. Вот упрощенный пример:
- Создайте новое расширение или перейдите к существующему.
- Внутри расширения создайте новую папку под названием «Классы», если она не существует.
- В папке «Классы» создайте новый файл PHP, например «PageTreeHook.php».
- Откройте «PageTreeHook.php» и реализуйте следующий код:
<?php
namespace Vendor\ExtensionName\Hooks;
use TYPO3\CMS\Backend\Tree\Pagetree\PageTree;
use TYPO3\CMS\Backend\Tree\Pagetree\TreeNode;
class PageTreeHook
{
public function modifyNodeLabel(&$parameters, PageTree &$parentObject)
{
/ @var TreeNode $node */
$node = $parameters['node'];
$node->setTitle($node->getUid() . ' - ' . $node->getTitle());
}
}
- Сохраните файл PHP и перейдите к файлу ext_localconf.php вашего расширения.
- Добавьте следующий код для регистрации перехватчика:
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/db_layout.php']['drawHeaderHook']['extensionname'] =
\Vendor\ExtensionName\Hooks\PageTreeHook::class . '->modifyNodeLabel';
Благодаря реализации этого специального серверного модуля PageTree будет отображать идентификаторы страниц рядом с заголовками.
В этой статье мы рассмотрели несколько методов отображения идентификаторов страниц в дереве страниц TYPO3. Предпочитаете ли вы использовать расширения, настраивать макеты серверной части, использовать TypoScript или создавать собственные модули серверной части, TYPO3 предлагает гибкость, соответствующую вашим потребностям. Раскрыв возможности PageTree, вы сможете более эффективно перемещаться по своему веб-сайту TYPO3 и управлять им.
Помните, что отображение идентификаторов страниц может быть полезно при разработке и обслуживании веб-сайта. Однако из соображений безопасности рекомендуется скрыть их от публичного просмотра на действующем веб-сайте.