XenForo Resource Manager

XenForo Resource Manager 2.3.10

Нет прав для скачивания
Получаю в серче ошибку по странице ресурса Недопустимый тип объекта в поле "<parent_node>"
страници , непоянтно где это исправить
 
Возможно ли сделать в иконках ресурса поддержку прозрачного фона? Чтобы иконки, не полностью заполняющие круг, красиво отображались на любой цветовой схеме, светлой и тёмной.
 
Получаю в серче ошибку по странице ресурса Недопустимый тип объекта в поле "<parent_node>"
страници , непоянтно где это исправить
Это отвечает за вывод ресурсов с оценками. Вероятно вам попадалось при поиске гугла страницы, где есть рейтинг с оценками, вот именно о нём и речь. Не критичная проблема, просто в поиске гугла будут игнорироваться ресурсы с оценками т.е. звёздочки при выдаче показываться не будут. 😒
123.png
1775983887044.png
И консоль гугла нам об этом активно кричит.

Исправляем это безобразие...

Создать модификатор шаблона - xfrm_resource_view
Найти:

Код:
<xf:page option="ldJsonHtml">
    <script type="application/ld+json">
        {{ $resource.getLdStructuredData()|json(true)|raw }}
    </script>
</xf:page>
Заменить:
Код:
<xf:set var="$resourceUrl" value="{{ link('canonical:resources', $resource) }}" />
<xf:set var="$discussionUrl" value="{{ $resource.hasViewableDiscussion() ? link('canonical:threads', $resource.Discussion) : $resourceUrl }}" />
<xf:set var="$authorUrl" value="{{ $resource.User ? link('canonical:members', $resource.User) : $resourceUrl }}" />
<xf:set var="$authorName" value="{{ $resource.User ? $resource.User.username : $resource.username }}" />
<xf:set var="$descFull" value="{{ snippet($description.message, 5000, {'stripBbCode': true}) }}" />
<xf:set var="$currency" value="{{ $xf.options.currencyCode ?: 'EUR' }}" />

<xf:set var="$allReactions" value="0" />
<xf:if is="$description.reactions">
    <xf:foreach loop="$description.reactions" value="$cnt">
        <xf:set var="$allReactions" value="{{ $allReactions + $cnt }}" />
    </xf:foreach>
</xf:if>

<xf:page option="ldJsonHtml">
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@type": "SoftwareApplication",
        "@id": "{{ $resourceUrl|escape('json') }}#app",
        "name": "{{ $resource.title|escape('json') }}",
        "description": "{{ $descFull|escape('json') }}",
        "url": "{{ $resourceUrl|escape('json') }}",
        "image": "{{ $resource.getIconUrl(true)|escape('json') }}",
        "applicationCategory": "{{ $resource.Category.title|escape('json') }}",
        "operatingSystem": "Windows 7, Windows 10, Windows 11",
        "datePublished": "{{ date($resource.resource_date, 'c')|escape('json') }}",
        "dateModified": "{{ date($resource.last_update, 'c')|escape('json') }}",
        "discussionUrl": "{{ $discussionUrl|escape('json') }}",
        "author": {
            "@type": "Person",
            "name": "{{ $authorName|escape('json') }}",
            "url": "{{ $authorUrl|escape('json') }}"
        },
        "publisher": {
            "@type": "Organization",
            "name": "{{ $xf.options.boardTitle|escape('json') }}"
        },
        "offers": {
            "@type": "Offer",
            "price": {{ $resource.price ?: 0 }},
            "priceCurrency": "{{ $currency|escape('json') }}"
        }
        <xf:if is="$allReactions > 0 OR $resource.view_count > 0">
        ,
        "interactionStatistic": [
            <xf:if is="$allReactions > 0">
            {
                "@type": "InteractionCounter",
                "interactionType": "https://schema.org/LikeAction",
                "userInteractionCount": {{ $allReactions }}
            }<xf:if is="$resource.view_count > 0">,</xf:if>
            </xf:if>
            <xf:if is="$resource.view_count > 0">
            {
                "@type": "InteractionCounter",
                "interactionType": "https://schema.org/ViewAction",
                "userInteractionCount": {{ $resource.view_count }}
            }
            </xf:if>
        ]
        </xf:if>
        <xf:if is="$resource.rating_count > 0">
        ,
        "aggregateRating": {
            "@type": "AggregateRating",
            "ratingValue": {{ $resource.rating_avg }},
            "ratingCount": {{ $resource.rating_count }},
            "bestRating": 5,
            "worstRating": 1
        }
        </xf:if>
    }
    </script>
</xf:page>
После этого копируем URL ресурса и вставляем тут для теста -
Если ошибки не покажет, значит всё работает.🙂
После повторного анализа, у вас ошибки не будет и пойдёт процесс проверки, что говорит об успехе: (как на моём примере ниже)
1775982475435.png
1775983919050.png
Сегодня как раз решал проблему, пришлось повозиться, чтобы исправить, даже на офе нет решения, но заодно и . Официальный ляп т.к. тут косяк в том, что для гугла оценок указана неправильная переменная и это всё подвязывается скриптом.
Не знаю, на сколько практично моё решение, но по крайне мере всё работает.
 
Последнее редактирование:
  • Мне нравится
Реакции: azmg
Возможно ли сделать в иконках ресурса поддержку прозрачного фона? Чтобы иконки, не полностью заполняющие круг, красиво отображались на любой цветовой схеме, светлой и тёмной.
Странный вопрос, учитывая, что вывод иконки зависит от самой иконки, с фоном она или без, выводиться будет именно в том виде, какая она и есть. Всё равно вы иконку не измените выше чем на 96х96, а если нужно поиграться с размерами в стилях, то плагин в помощь.
Правда вижу появился плагин, что решает главную проблему по обрезке иконки
И есть старый вариант
Все тока бабки подавай. 😁
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу