Янис

Янис

С нами с 05 мая 2016; Место в рейтинге пользователей: #75
Янис
13 сентября 2018, 10:37
0
Я когда вставлял код, там ка-то пробел лишний проскочил. Раздел @font-face надо заменить:
@font-face {
font-family: 'Glyphicons Halflings';
src: url('../fonts/glyphicons-halflings-regular.eot');
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
Янис
12 сентября 2018, 13:18
0
Оу, я невнимательно прочитал вторую часть вашего коммента, у вас там всё уже правильно расписано. Смотрю ещё одной статьёй, не отделаться. На самом деле – это огромный пласт «Как сделать мультиязычный сайт?» Тема для следующей статьи уже есть.
Янис
12 сентября 2018, 12:58
+2
Да, вполне, но уже на следующей неделе. Деньги зарабатывать тоже надо :)
Янис
12 сентября 2018, 12:55
0
Всё просто.
В первом случае, если менеджеру запрещено редактировать эти записи, используем словарь MODX'a:
<p>[%copy_info]]</p>
Если разрешено, то на первой странице сайта создаём ТВ'шки со всякой служебной инфой и потом выводим нужные поля, например через fastField:
<p>[[#[[++site_start]].copy_info]]</p>
А во втором случае (относится ко всем сниппетам из pdoTools) можно ограничивать выборку по контекстам через опцию &context. Получить текущий контекст через Fenom вообще плёвое дело:
{$_modx->context.key}
Янис
12 сентября 2018, 12:31
0
Это уже отдельная инструкция по работе со словорями :) К работе с Вавилоном она не отностится. Как я уже писал, в темплейте текста быть не должно, также как и в сниппете не должно быть эха. Конечно же, когда я начинал работать на MODX'е, у меня было и то и другое, но с опытом и чтением форумов приходит понятие – как можно сделать красиво и универсально.
Янис
12 сентября 2018, 12:15
+1
Принцип работы с Вавилоном в том и заключается, что вы получаете новый документ в другом контексте и все поля можно заполнять на другом языке. Если поля были чем-то заполнены до перевода, то данные автоматом сохранятся в новом документе. Нет нужды что-то править в темплейте. Там вообще голого текста быть не должно, т.е. темпплейт может выглядеть как-то так:
...
<main>
<h1>[[*pagetitle]]</h1>
<p>[[*longtitle]]</p>
[[*content]]
<a href="[[~[[*link_url]]]]">[[*link_text]]</a> <!-- кастомные ТВшки -->
</main>
...
Янис
12 сентября 2018, 10:20
0
В консоли браузера ошибок нет? Кроме того HTML код
<!--tickets_stared <i class="glyphicon glyphicon-star stared star"></i>-->
не должен на странице что-либо отображать, поскольку стоит внутри комментария.
А лучше — скинь ссылку на станицу. Поскольку ошибки во фронте, так будет проще разобраться.
Янис
11 сентября 2018, 16:47
0
Помощь еще нужна? Там вся проблема в том, что класс .glyphicon ссылается на шрифт glyphicons-halflings-regular. Найти его можно в архиве с 3-м бутстрапом. В стиле добавить:
@font-face {
    font-family:'Glyphicons Halflings';
    src:url(../fonts/glyphicons-halflings-regular.eot); /* Такой каталог должен существовать и туда надо положить шрифты из архива */
    src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),u    rl(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg');
}
.glyphicon {
    position:relative;
    top:1px;
    display:inline-block;
    font-family:'Glyphicons Halflings';
    font-style:normal;
    font-weight:400;
    line-height:1;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
А потом уже и сами символы:
...
.glyphicon-heart:before{content:"\e005"}
.glyphicon-star:before{content:"\e006"}
.glyphicon-star-empty:before{content:"\e007"}
.glyphicon-user:before{content:"\e008"}
...
Собственно всё.
Янис
11 сентября 2018, 16:04
0
Когда-то учил MODX' у. А со статьей не получилось. :( Рейтинг у меня еще мал. Ладно, есть один способ.
Янис
11 сентября 2018, 10:35
0
Тогда еще, там же, изменить baseUrlRelative на «Нет».
Янис
11 сентября 2018, 09:39
0
Не base_url, а baseUrl в настройках «Источники файлов». Не в системных настройках.
Янис
11 сентября 2018, 00:11
0
Два варианта: или не использовать встроенный phpThumb (я работаю через pThumb) или поправить путь в Источнике файлов. baseUrl в этом случае должен стать абсолютным: "/". Вроде так, слёту не вспомню. Пробуйте, если что не так, отпишитесь.
Есть ещё вариант через поиск/замену, но это извращение
Янис
10 сентября 2018, 22:36
+1
Могу свои пять копеек вставить. У меня овердохрена сайтов с Babel. 5 лет с MODX'om, в месяц, минимун один проект, в среднем — 2, максимум 4-е. 99% — мультиязычные с установленным Вавилоном. Все удачно пережили последнее обновление. Возможно проблема в настройках Babel. Судя по всему надо писать статью, как его настроить. ОК, завтра осилю, благо инструкцию для учеников написана.
Янис
10 сентября 2018, 22:33
+1
Нет, проблем нет, потому что Babel — стабильно работающий компонент.
Янис
10 сентября 2018, 15:35
0
Вот обеими руками «за»! Ну и в дополнение: чтобы не париться на каждом новом проекте и не мучаться при создании кучи полей, не забывайте про экспорт/импорт, не бойтесь, MIGX сам подправит все ID'шки.
Янис
10 сентября 2018, 14:56
1
0
Это неправильный вариант, после обновления всё слетит. Если на хосте стоит Апач, то править надо .htaccess. Вот здесь подробная документация.
# Force language when requesting the root (/)
RewriteCond %{HTTP:Accept-Language} ^ukr [NC]
RewriteRule ^$ /ukr/ [R=301,L]

RewriteCond %{HTTP:Accept-Language} !^ukr [NC]
RewriteRule ^$ /ukr/ [R=301,L]
Кроме того, плагин OnHandleRequest тоже надо править.
Янис
10 сентября 2018, 14:38
0
А что конкретно выводят плейсхолдеры [[+wrapper]]?
Янис
10 сентября 2018, 14:22
0
Возможно потому что файл не корректный. Как правильно это сделать написано в документации MODX'a
Янис
10 сентября 2018, 13:51
0
Данная конструкуция вызова сниппета не работает корректно если любой из плейсхолдеров (например, [[+wrapper]]) объявлен ранее. Попробуйте сделать темплейты не инлайн, а отдельными чанками, так вы наверняка изолируете значения плейсхолдеров.