Непрочитанные темы (мобильная версия)

Несколько дней назад в моём форуме возникла эта проблема: хотя я уже просмотрел темы, они всё ещё отображаются как непрочитанные. У меня была такая же проблема в десктопной версии, и мне удалось её решить, изменив шаблон, но, честно говоря, в мобильной версии я пока не смог этого сделать. Надеюсь, кто-нибудь сможет помочь. Вот шаблон, который я использую:

<script type='text/x-handlebars' data-template-name='mobile/list/topic-list-item.raw'>
    <td>
      {{~#unless expandPinned}}
      <div class='pull-left'>
        <a href="/users/{{topic.creator.username}}">{{avatar topic.creator imageSize="50"}}</a>
              </div>
              
      <div class='right'>
      {{else}}
      <div>
            {{/unless~}}
            

<div class='main-link'>
          {{raw "topic-status" topic=topic}}
          {{topic-link topic}}
          {{#if topic.featured_link}}
            {{topic-featured-link topic}}
          {{/if}}
          
          
{{#if hideCategory}}
   <div class='category'>
          <span class="author-name"><a href="{{topic.creator.path}}" data-user-card="{{topic.creator.username}}">{{topic.creator.username}}</a></span>
        </div>
{{else}}
        
{{/if}}
                    {{#if topic.unseen}}
                      <span class="badge-notification new-topic"></span>
                      
             {{/if}}
          {{~#if expandPinned}}
          {{raw "list/topic-excerpt" topic=topic}}
          {{/if~}}
        </div>
                <div class='pull-right'>
          {{raw "list/post-count-or-badges" topic=topic postBadgesEnabled=showTopicPostBadges}}
        </div>
    
        <div class="topic-item-stats clearfix">
          {{#unless hideCategory}}
            <div class='category'>
              {{category-link topic.category}}
            </div>
          {{/unless}}
    
          {{discourse-tags topic mode="list"}}
    
          <div class="pull-right">
            <div class='num activity last'>
            <span class="age activity" title="{{topic.bumpedAtTitle}}"><a href="{{topic.lastPostUrl}}">{{format-date topic.bumpedAt format="tiny" noTitle="true"}}</a></span>
            </div>
          </div>
              <div class="clearfix"></div>
        </div>
      </div>
    </td>
</script>

В основной шаблоне внесены некоторые изменения, поэтому вам стоит сравнить с ним.

Если я правильно понимаю, вы изменили секцию аватара профиля на <a href="/users/{{topic.creator.username}}">{{avatar topic.creator imageSize="50"}}</a>. Правильно ли указан путь /users/? Он ведёт на страницу профиля пользователя вместо открытия карточки пользователя. При использовании пути по умолчанию для пользователя он должен быть /u/.

Другое изменение в вашем шаблоне — отображение имени пользователя, если категория скрыта. Это хорошо видно на вашем скриншоте. Я изменил эту секцию следующим образом.

Удалите это из вашего шаблона:

{{#if hideCategory}}
   <div class='category'>
          <span class="author-name"><a href="{{topic.creator.path}}" data-user-card="{{topic.creator.username}}">{{topic.creator.username}}</a></span>
   </div>
{{else}}
        
{{/if}}

И добавьте это в блок по умолчанию {{#unless hideCategory}} с {{else}}.

{{#unless hideCategory}}
{{~raw-plugin-outlet name="topic-list-before-category"}}
<div class='category'>
  {{category-link topic.category}}
</div>
{{else}}
<span class="author-name">
  <a href="{{topic.creator.path}}" data-user-card="{{topic.creator.username}}">{{topic.creator.username}}</a>
</span>
{{/unless}}

Поэтому я предлагаю импортировать весь шаблон и изменить его в соответствии с вашими потребностями следующим образом.

<script type='text/x-handlebars' data-template-name='mobile/list/topic-list-item.raw'>
<td class="topic-list-data">
  {{~raw-plugin-outlet name="topic-list-before-columns"}}
  <div class='pull-left'>
    <a href="/users/{{topic.creator.username}}">{{avatar topic.creator imageSize="50"}}</a>
  </div>
  <div class='right'>
    {{~raw-plugin-outlet name="topic-list-before-link"}}
    <div class='main-link'>
      {{~raw-plugin-outlet name="topic-list-before-status"}}
      {{~raw "topic-status" topic=topic~}}
      {{~topic-link topic class="raw-link raw-topic-link"}}
      {{~#if topic.featured_link~}}
      {{~topic-featured-link topic~}}
      {{~/if~}}
      {{~raw-plugin-outlet name="topic-list-after-title"}}
      {{~#if topic.unseen~}}
        <span class="topic-post-badges">&nbsp;<span class="badge-notification new-topic"></span></span>
      {{~/if~}}
      {{~#if expandPinned~}}
      {{~raw "list/topic-excerpt" topic=topic~}}
      {{~/if~}}
    </div>
    <div class='pull-right'>
      {{raw "list/post-count-or-badges" topic=topic postBadgesEnabled=showTopicPostBadges}}
    </div>
    <div class="topic-item-stats clearfix">
      {{#unless hideCategory}}
        {{~raw-plugin-outlet name="topic-list-before-category"}}
        <div class='category'>
          {{category-link topic.category}}
        </div>
        {{else}}
        <span class="author-name">
          <a href="{{topic.creator.path}}" data-user-card="{{topic.creator.username}}">{{topic.creator.username}}</a>
        </span>
      {{/unless}}
      {{discourse-tags topic mode="list"}}
      <div class="pull-right">
        <div class='num activity last'>
          <span class="age activity" title="{{topic.bumpedAtTitle}}"><a
              href="{{topic.lastPostUrl}}">{{format-date topic.bumpedAt format="tiny" noTitle="true"}}</a>
          </span>
        </div>
      </div>
      <div class="clearfix"></div>
    </div>
  </div>
</td>
</script>

В конструкторе тем это выглядит у меня хорошо. Извините, если я что-то упустил.


Небольшое исправление CSS, чтобы уменьшить отступ заголовка, чтобы имя пользователя можно было кликнуть.

.topic-list .main-link a.title {
  padding: 0.5em 0;
}

Спасибо большое, всё решено, выглядит отлично. :heart:

Ещё один вопрос: есть ли CSS, чтобы увеличить размер шрифта имени автора и добавить ему цвет?

Рад, что проблема решена. Конечно, вы можете изменить это. Вот как :arrow_double_down:
Измените размер и цвет на любой понравившийся.

.topic-list .topic-item-stats .author-name a {
  font-size: var(--font-up-1);
  color: red;
}

Ещё раз большое спасибо, всё именно так, как я хотел(а). :heart:

Реакция Дженнифер Лопес, гифка от NBC World Of Dance