Як видалити товсту кишку з міток на місцях?


10

Я просто хочу, щоб можна було видалити двокрапку з моїх відведених міток поля, наприклад:

Назва готелю: до назви готелю

Я скопіював field.tpl.php і видалив там товсту кишку, але незалежно від того, що Drupal відмовляється її прийняти і тягне товсту кишку з іншого місця.

Як я можу це зробити за допомогою функції template.php?


ви очистили кеш?
AjitS

так, кілька разів. no go
blue928


@ Blue928 Дивіться дубльований пост, вам необхідно змінити , theme_form_element()щоб зробити це
Клайв

Цей вузол / виправлення вище просто видалив колонки з форми, коли хтось редагує / вводить вміст. Мені потрібно видалити мітки після того, як вони будуть відображені у вузлі. .. значить, це не було б дублікатом вищезазначеного. Я фактично реалізував це рішення, щоб отримати такий результат.
синій928

Відповіді:


16

Відповідь, безумовно, використовувати field.tpl.php . Якщо ви подивитесь на джерело цього файлу, ви можете побачити рядки, що порушують:

<?php if (!$label_hidden): ?>
  <div class="field-label"<?php print $title_attributes; ?>>
    <?php print $label ?>:&nbsp;
  </div>
<?php endif; ?>

(мінливий пробіл та відступ для ясності).

Видалити товсту кишку так само просто, як замінити вищезазначені рядки на:

<?php if (!$label_hidden): ?>
  <div class="field-label"<?php print $title_attributes; ?>>
    <?php print $label ?>&nbsp;
  </div>
<?php endif; ?>

Я щойно перевірив це на пустій ​​установці Drupal, і вона прекрасно працює; більше польових кольорів після польових міток.

Якщо ви вже робите те саме, але не отримуєте правильних результатів, то я можу подумати про одну-дві речі, які можуть зіпсуватись:

  • Ви помістили власну версію field.tpl.php у папку модулів, а не в папку з темою вашого активного сайту (вона повинна бути в папці з темами).
  • Інший модуль / елемент у системі також переосмислює field.tpl.php, більш надійним способом, ніж ви є зараз. Перевірка того, чи так це, передбачає незмінне вимкнення кожного включеного модуля, щоб визначити, звідки виникає проблема.

Ви не зможете внести зміни за допомогою функції попередньої обробки шаблону, оскільки двокрапка введена у файл шаблону.


А, дійсно був ще один модуль, який заважав файлу шаблону працювати правильно. Дякуємо, що вказали на деякі корисні вказівки щодо налагодження.
blue928

9

Я щойно створив модуль, який робить саме це, видаляє колонки (на основі поля) з міток поля на виході: Колектомія


Можна підтвердити. Цей модуль працює чудово і є простим, елегантним рішенням проблеми.
Марк

2

Якщо це Вид з полями, просто натисніть на поле та зніміть прапорець "Помістити двокрапку після мітки" під "Створити мітку".


2

Набір дисплеїв забезпечує таку ж функціональність:

Якщо ввімкнено додаткові додатки для відображення, ви можете видалити кольори перед мітками:

Шлях до цього: /admin/structure/ds/list/extras/

введіть тут опис зображення


1
Це робить ЛОТ більше, ніж видаляє товсту кишку. Якщо ви застосували спеціальний CSS, це вб'є це.
Марк

0

У моєму випадку це спрацювало шляхом переосмислення theme_field()( field.module), скопіювавши всю функцію у мій template.phpфайл та змінивши рядок, який читається

$output .= '<div class="field-label"' . $variables['title_attributes'] . '>' . $variables['label'] . '&nbsp;</div>';

Очистіть кеші перед спробою.


0

Я не міг ніде знайти відповідь на це запитання для Drupal 8. У Drupal 8 двокрапка додається з файлом CSS (field.css) в основну тему Classy, ​​якщо ви використовуєте його як основну тему. Все, що вам потрібно зробити - це замінити його у власному файлі CSS у вашій темі.

Отже, з вихідного файлу field.css:

.field--label-inline .field__label::after {
    content: ':';
}

У моєму CSS-файлі теми для видалення двокрапки:

.field--label-inline .field__label::after {
    content: '';
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.