Иконка ресурса

Селектор языка в юзербаре

CrazyHackGUT

Проверенные
Сообщения
3,790
Решения
120
Реакции
8,837
Баллы
2,600
CrazyHackGUT добавил(а) новый ресурс:

Селектор языка в юзербаре - Добавляем простой селектор языка в юзербар

Добавляет простую кнопку для выбора языка в юзер бар.
Посмотреть вложение 92690

Шаблон: PAGE_CONTAINER
Ключ: NavLanguage
Описание: Adds a language selector in navigation bar
Тип модификации: Простой

Найти:
PHP:
<a href="{{ link('conversations') }}"
                                class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? '...

Узнать больше об этом ресурсе...
 
CrazyHackGUT, наверно, в замене в самом начале должно быть $0
 
grisha2217, нет, как раз таки в конце.
Если бы было в начале - тогда оно бы вставляло где-то посередине элемента ссылки на личные диалоги, и ругалось.
В моём же случае, я вставляю селектор прямо перед кнопкой личных диалогов. Потому и $0 в конце.
 
Извините, что-то я не врубаюсь

Без названия.png

Шаблон: PAGE_CONTAINER
Ключ: NavLanguage
Описание: Adds a language selector in navigation bar
Тип модификации: Простой
 
Bams431, надо создать новую модификацию в админке /admin.php?template-modifications/add
 
  • Мне нравится
Реакции: Hope
Bams431, да, разработчики немного поменяли этот фрагмент кода в 2.1. В поле "найти" надо вставить
Код:
<a href="{{ link('conversations') }}"
                                class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
103425

UPD: а может и не поменяли ничего, код вроде тот же самый, что и в описании ресурса, но он у меня тоже не сработал при копировании ? Может из-за пробела/табуляции так получилось
 
Последнее редактирование:
Bams431, да, разработчики немного поменяли этот фрагмент кода в 2.1. В поле "найти" надо вставить
Код:
<a href="{{ link('conversations') }}"
                                class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
Посмотреть вложение 103425

UPD: а может и не поменяли ничего, код вроде тот же самый, что и в описании ресурса, но он у меня тоже не сработал ? Может из-за пробела/табуляции так получилось


Найти
Код:
<a href="{{ link('conversations') }}"
                                class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
Заменил на

Код:
<xf:if is="$xf.visitor.canChangeLanguage()">
  <a href="{{ link('misc/language') }}"
     data-xf-click="overlay" data-xf-init="tooltip"
     title="{{ phrase('language_chooser')|for_attr }}"
     rel="nofollow"
     class="p-navgroup-link"
     data-menu-pos-ref="< .p-navgroup"
     aria-expanded="false" aria-haspopup="true">
    <span class="p-navgroup-linkText"><i class="fa fa-globe" aria-hidden="true"></i> {$xf.language.title}</span>
  </a>
</xf:if>
$0

Без изминений
 
Bams431, нажмите ctrl+F и скопируйте этот кусок кода для поля "найти" самостоятельно из поля "Содержимое шаблона". Код приведен верный, но из табуляции/пробелов/переноса строки просто скопировать отсюда не получится
 
Bams431, нажмите ctrl+F и скопируйте этот кусок кода для поля "найти" самостоятельно из поля "Содержимое шаблона". Код приведен верный, но из табуляции/пробелов/переноса строки просто скопировать отсюда не получится

Честно, ничего не понял. Как ни крути, копируется код такого вида

<a href="{{ link('conversations') }}"
class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
 
Есть одно золотое правило, модификация может не сработать, так как код из мануала или уже устарел или может содержать другое форматирование, отсюда всегда нужно брать из нужного шаблона стиля, так больше вероятность на применение модификации.
А так, лучше использовать регулярки в мануалах, так больше вероятность применения по мануалу.
 
Есть одно золотое правило, модификация может не сработать, так как код из мануала или уже устарел или может содержать другое форматирование, отсюда всегда нужно брать из нужного шаблона стиля, так больше вероятность на применение модификации.
А так, лучше использовать регулярки в мануалах, так больше вероятность применения по мануалу.

Если бы знал еще как взять актуальный код.... и вопроса бы не было )
 
Код присутствует в мануале, достаточно его найти в нужном шаблоне, он может быть изменён, просто будьте внимательны.
 
Код присутствует в мануале, достаточно его найти в нужном шаблоне, он может быть изменён, просто будьте внимательны.

Код:
<a href="{{ link('conversations') }}"
                                class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
                                data-badge="{$xf.visitor.conversations_unread|number}"
                                data-xf-click="menu"
                                data-xf-key="{{ phrase('shortcut.conversations_menu')|for_attr }}"
                                data-menu-pos-ref="< .p-navgroup"
                                aria-label="{{ phrase('inbox')|for_attr }}"
                                aria-expanded="false"
                                aria-haspopup="true">
                                <i aria-hidden="true"></i>
                                <span class="p-navgroup-linkText">{{ phrase('nav_inbox') }}</span>
                            </a>

Окей, нашел и заменил его, без изминений
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу