Як видалити назву / заголовок сторінки?


10

Чи є в Drupal 8 простий спосіб налаштувати сторінку так, щоб її заголовок / заголовок сторінки не відображався на сторінці?

Я створив базову сторінку, з / home як псевдонім шляху та Home як заголовок. Я встановив це як головну сторінку. Однак у верхній частині сторінки, трохи нижче внизу панелі та сухарів, відображається "Домашня сторінка".

Чи потрібно створити підтему теми "Bootstrap" і якось додати спеціальний CSS?

Відповіді:


28

Drupal 8 розміщує назву сторінки у власному блоці (називається заголовок сторінки). Ви можете керувати, коли і де цей блок відображається на сторінці компонування блоку: / admin / structure / block


2

Ви також можете використовувати цей модуль для drupal 8 https://www.drupal.org/project/exclude_node_title

  • Цей модуль обробляє дуже просту функціональність, вирішуйте, чи виключити назву вузла з повної сторінки вузла або тизерів вузлів. Він забезпечує прапорець на сторінках редагування вузлів для легшого виключення. Також надається можливість приховати всі заголовки певного типу вмісту. З інтерфейсу адміністратора ви можете вибрати тип вмісту, за яким ховатимете заголовок.

1
Дуже дякую, що рекомендували цей модуль, naveen. Я шукав щось просте, нестандартне, саме тому я вибрав відповідь акросмана. Однак, здавалося б, ваша пропозиція спрацьовує однаково добре, і насправді вона бажана, якщо хочете приховати заголовок залежно від типу вмісту. Я зробив закладку до цього модуля на випадок, якщо у мене виникне необхідність. Ще раз дякую за допомогу!
kvjava1

Я б застеріг користувачів щодо цього модуля; ми встановили його, використовували його деякий час, але натрапили на пару сюрпризів: 1. Він не інтегрований з представленнями даних, тому ви не можете створити подання, яке вказує, на яких вузлах виключені заголовки ( drupal.org/ project / виключити_node_title / issues / 3065469 ), і 2. він не зберігається в редакціях, тому якщо ви переглядаєте історію редагування вузла, він буде відображатися з його заголовком незалежно від того, навіть якщо для цієї редакції було встановлено значення виключити назву вузла ( drupal.org/project/exclude_node_title/isissue/3077257 ).
user1359

1

Це можна зробити цілком за допомогою CSS. Вам потрібно націлити на той вузол, який ви використовуєте як сторінку ДОМАШНЯ.

Тепер Drupal-7 генерував специфічний клас для кожного вузла. І таким чином було легко націлити на кожен окремий вузол, і ми змогли застосувати конкретний CSS до цього конкретного вузла.

Але в Drupal 8 ця властивість недоступна, тому нам потрібно це додати. виконайте наступні кроки. Я показую це за допомогою теми Bartik, оскільки я не знайомий з темою Bootstrap. Ви також можете виконати тему завантаження. Це чистий CSS, тому ніяких підтемів не потрібно.

1. Додайте функцію до файлу bartik.theme.

if ($node = \Drupal::request()->attributes->get('node')) {
    $variables['attributes']['class'][] = 'page-node-' . $node->id();
  }

у розділі,

function bartik_preprocess_html(&$variables) {   

}

Чому я показую саме так, оскільки в ньому вже є інші коди function bartik_preprocess_html(&$variables), тому додайте цю функцію як останній рядок.

Очистити кеш,

2. Отримайте CSS для цього вузла

Тепер, якщо ви робите саме Inspect elementна цьому конкретному вузлі. Ви можете знайти клас у <body></body>розділі як page-node-XX.

3. Перейдіть до основної / теми / bartik / css / компоненти / page-title.css і додайте до цього наступний код,

.page-node-XX .page-title {
 display: none;
}

Очистити кеш,

Тепер таким чином ви можете націлити на конкретний вузол, і ви можете робити будь-який CSS, який ви хочете застосувати.

Кредит за код функції: Посилання


CodeNext, дуже дякую за детальну відповідь. Насправді я зміг швидко виконати те, що мені потрібно було зробити, додавши наступний CSS до файлу styles.css моєї підтеми: .page-header {display: none; } Однак відповідь акросмана пропонувала найпростіший підхід. Мені також сподобалась ваша відповідь, оскільки це допомагає зрозуміти, як працює тематика в Drupal8. Знову дякую! Я дійсно ціную це.
kvjava1
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.