Поддержать Проект

Обратная связь

[MODX] Guru
  • Информация
  • Разработчикам
  • Дополнения
    • DocLister
    • DLMenu
    • DLCrumbs
    • DLBuildMenu
    • DLLastViews
    • DLSiblings
    • DLRequest
    • DLglossary
    • DLSitemap
    • DocInfo
    • FormLister
    • Wayfinder
    • phpthumb
    • LikeDislike
    • eForm
    • Ditto
    • multiTV
    • AjaxMegaSearch
    • AjaxSearch
    • WebLoginPE
    • Breadcrumbs
    • CodeMirror
    • AnythingRating
    • Easy Newsletter
    • FirstChildRedirect
    • OpenGraphTags
    • ddTypograph
    • TagSaver
    • BlackList
    • CfgTv
    • ModxAccount
    • Forgot Manager Login
    • GetField
    • if
    • Jot
    • ListChild
    • ListIndexer
    • ManagerManager
    • ddMMEditor
    • MaxiGallery
    • MemberCheck
    • ddGetMultipleField
    • MetaX
    • MODxBB и phpBB
    • Yams
      • Установка
      • Настройка ManagerManager
      • Wayfinder и YAMS
      • Ditto и YAMS
    • Personalize
    • PHx
    • Reflect
    • tagLinks
    • TransAlias
    • TvTagCloud
    • UltimateParent
    • WebSignup
    • WebLogin
    • countViews
    • thumb
    • imageCaptor
    • optimizeJPG
    • Preview Next
    • Shopkeeper
    • SiteMap
    • Sass
    • Selector
    • SimpleGallery
    • SimpleTube
    • SimpleFiles
    • Star Rating
    • MinifyX
    • adminNav
    • SimplePolls
    • CResource
    • MODxAPI
    • customTables
    • HtmlInLine
    • HtmlMinModxEvo
    • SHKUserProfile
    • PickDocsInTree
    • evoSearch
    • editDocs
    • PageBuilder
    • HybridAuth
    • Compare
    • alterTitle
  • Виджеты
  • Уроки
  • Разработчики
  • Готовые примеры
  • Блог
  • Конфиги
  • HTML коды
© [MODX] Guru
  • Yams

Yams: Настройка ManagerManager

  • Дополнения
  • Yams
  • Настройка ManagerManager
1638

Yams: Настройка ManagerManager

Независимо от того, что используется, в файле с правилами или чанке с правилами в конце надо прописать:

require ($modx->config['base_path'] . 'assets/modules/yams/yams.mm_rules.inc.php' );

Собственно, YAMS готов к работе.

В «Инструментах» > «Конфигурации» включить Дружественные URL, разрешить вложенные URL, также использовать в связке с предыдущим параметром повторяющиеся псевдонимы, тогда путь до документа в адресной строке будет выглядеть:

site.com/en/catalogue/home-video

site.com/ru/catalogue/home-video

Настройка:

Во вкладке «Модули» > «YAMS» лежат все настройки.

Настройка языков:

Собственно, исчерпывающая страница, на которой показаны языки и как их добавлять. Теги, названия для отображения в самом же языке, в других языка, выбор письма справа налево или наоборот, теги (нужны для вызовов сниппета YAMS, обозначение, группы), системное название языка, имя сервера система подставляет автоматически. Set Default – поставить язык по умолчанию, чтобы с него открывался сайт.

Дальше идёт настройка сервера, после того, как созданы все необходимые языки, YAMS создаёт правила, которые надо вписать в .htaccess, чтобы правильно работали пути и редиректы.

Это находится на следующей вкладке:

Всё содержимое из этой вкладки просто скопировать в .htaccess

Другие настройки:

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

Последняя вкладка: Multilingual Templates

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

YAMS заменяет стандартные поля Pagetitle, Longtitle, Content итд TV-параметрами с окончанием _ru, _en итд, то бишь, чтобы Pagetitle страницы был привязан именно к языку и полное название TV-параметра тогда выглядит pagetitle_ru.

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

Также можно создавать новые TV-параметры с нужным окончанием, они автоматически будут переноситься в соответствующий таб языков.

Не рекомендуется, даже больше, нельзя убирать поле Internal Name, оно нужно для отображения названия документа в дереве слева.

Создание шаблона:

Стандартный шаблон без дополнительных вызовов других сниппетов. YAMS автоматически определяет такие поля, как [*pagetitle*], [*longtitle*], [*content*]. То есть, достаточно вставить их в шаблон, сделать во вкладке Multilingual Templates шаблон многоязычным и при редактировании документа заполнить эти поля для каждого языка, при переключении языков на сайте, они будут меняться.

Механизм переключения языков:

Создаётся, например, чанк Languages, ставится в нужном месте в шаблоне и в чанк записывается:

[[YAMS? &get=`repeat` &repeattpl=`lang_tpl` &currenttpl=`current_lang_tpl`]]

&repeattpl=`lang_tpl` – шаблон кнопки языка
&currenttpl=`current_lang_tpl` – шаблон кнопки текущего языка

Шаблон lang_tpl выглядит, например, вот так:

(yams_name)

(yams_docr) – ссылка, сгенерированная до текущей страницы в этом или остальных языках

(yams_name) – имя языка, вписанное в табе Модули > Yams > Language Settings

&currenttpl – шаблон выбранного языка. Тоже самое, только можно добавить class="selected", ну, или что по вкусу, чтобы язык был виден, как текущий.

Точно таким же образом можно подставить и флажки вместо текста.