1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

1.1.3 Как обрезать description?

Тема в разделе "Оптимизация XenForo", создана пользователем alexfork, 23.09.2012.

Загрузка
  1. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Всем здрасьте!

    Обратил внимание, что сейчас в description засовывается весь первый пост целиком. Это весьма не гуд, надо резать до, скажем 20-25 знаков. Подскажите как это сделать? Иначе клей, а это не айс.
     
  2. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    В дескрипш засовывается 155 символов первого сообщения.
    Хотите меньше - шаблон thread_view, в строке
    Код:
    <meta name="description" content="{xen:helper snippet, $firstPost.message, 155}" /></xen:container>
    меняете 155 на нужное количество
     
    alexfork нравится это.
  3. 1981

    1981 Местный

    Регистрация:
    15.10.11
    Сообщения:
    273
    Симпатии:
    19
    Версия XF:
    1.1.4
    Для пользователей ой как неудобно будет, стоит этим жертвовать ради СЕО?
     
  4. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Что будет неудобно?
    Что то ему глубоко фиолетово на эту манипуляцию, вот пример.
     
  5. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    А чего это вы с шаблонами делали, что у вас в дескрипшн вместо первого сообщения попадает такой текст?
     
  6. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Вы это где смотрите? Сейчас в шаблоне вообще кусок отвечающий за meta description выкосил, потому что что туда 155 было написано, что 50 — ему без разницы, он брали и тулил в дескрипшен всю статью (3800 знаков) целиком, и на изменение этого параметра не реагировал никак. Пришлось удалить вообще.
     
  7. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    Я это смотрю по приведенной вами ссылке. В исходном коде страницы.
    Screen Shot 2012-09-23 at 22.07.30 .png
     
  8. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Ну значит движок XenForo так отреагировал на удаление блока
    HTML:
    <meta name="description" content="{xen:helper snippet, $firstPost.message, 155}" /></xen:container>
    из указанного вами шаблона. Лучше уж так, чем он туда дублировал весь первый пост без каких-либо ограничений.
     
  9. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    Да, посмотрел в шаблон, там по умолчанию подставляется эта фраза в дескрипшн и потом поверху переписывается куском первого сообщения.

    Почему у вас не сработало отрезание лишнего текста - уже другой вопрос. Заглянув в исходный код страницы этой самой темы вы можете убедиться, что текст сообщения отрезается. Так что это где-то на вашей стороне. Может, виноват какой-то плагин, который что-то вам там поломал
     
  10. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Видимо вы правы. Ну, мне в принципе фиолетово что он туда пишет, главное чтобы он туда первый пост 1-в-1 не тулил. А в каком шаблоне можно вообще удалить вывод meta description не подскажете?
     
  11. Pepelac

    Pepelac Продам луц в бутылках

    Регистрация:
    28.09.10
    Сообщения:
    1 794
    Симпатии:
    1 361
    PAGE_CONTAINER
    Но там свои нюансы. Дескрипшн там выводится хитро - если нет переопределенного дескрипшина, то выполняется этот код
    Код:
    <xen:if is="{$pageDescription.content} AND !{$pageDescription.skipmeta} AND !{$head.description}"><meta name="description" content="{xen:string wordTrim, {xen:helper stripHtml, {xen:raw $pageDescription.content}}, 200}" /></xen:if>
    Но если есть переопределенный дескрипшен (как он переопределялся в шаблоне темы, та строка, которую я упоминал выше), то за его вывод отвечает цикл в следующей строке
    Код:
    <xen:if is="{$head}"><xen:foreach loop="$head" value="$headElement">{xen:raw $headElement}</xen:foreach></xen:if>
    Чтобы полностью удалить дескрипшн нужно внести изменения в обоих местах.
     
    alexfork нравится это.
  12. alexfork

    alexfork Новичок

    Регистрация:
    12.09.12
    Сообщения:
    10
    Симпатии:
    2
    Версия XF:
    1.1.3
    Благодарю.
     

Поделиться этой страницей