Всего 123 801 комментарий

Дядя Сэм
17 августа 2023, 12:43
0
Зайдите в саму MySQL и посмотрите какая там кодировка стоит, по идее latin1_swedish_ci

Если да, тогда вам необходимо её поменять на utf8_general_ci


1. Для начала идём в «Операции»
2. Меняем кодировку самой базы на utf8_general_ci
3. Ставим галочку, на против Change all tables collations
4. Ставим галочку, на против Change all tables columns
5. Нажимаем кнопку "Выполнить".
И все.

Или можете выполнить вот по этой инструкции -> Инструкция
Роман
17 августа 2023, 10:10
0
да алиас совсем другой в копии, я же привел пример
Рустам
17 августа 2023, 09:38
0
Спасибо за подсказки!
Разобрался…
Можно выводить сниппет либо через Ajax событие «клик», либо через событие mse2_load.

Но все равно знаний у меня нехватает, после первичного ajax запроса сниппет подгружается, но при фильтрации сниппет приходится маскировать через style=«display: none;»

А вот сделать как в фильтре чтобы была подгрузка и удаление самого блока в зависимости от условий, сколько товара выведено на страницы, увы здесь я не тяну.
Андрей
16 августа 2023, 23:59
0
Ну тогда можно доработать скрипт, и вырезать нужную фразу из алиаса. Изначально же речь шла о копии :)
Dan
Dan
16 августа 2023, 21:54
1
0
Вы сможете создать ресурс с таким же алиасом только в том случае, если у вас включены вложенные урлы и копировать вы будете в другого родителя. В противном случае не получится сохранить ресурс с таким же алиасом.
Вообще такие вещи лучше делать через процессор, но процессор resource/dublicate не предусматривает указание нового родителя. А почему вам нужно сохранить алиас?
Роман
16 августа 2023, 18:39
0
Спасибо, но алиас меняет полностью, если заголовок можно реально вырезать слово Копия, то если у ресурса был blog алиас а заголовок Блог о садоводстве, то в копии будет алиас blog-o-sadovodstve :( короче удаление копия не решает проблему
Андрей
16 августа 2023, 18:35
0
Можно простенький плагин накатать:
<?php
if ($modx->event->name=="OnDocFormSave"){ 
    $id = $resource->get('id');
    $pages = $modx->getIterator('modResource', array('parent' => $id));
    foreach ($pages as $p) {
        $p->set('pagetitle', str_replace('Копия ', '', $p->get('pagetitle')) );
        $p->set('alias', str_replace('kopiya-', '', $p->get('alias')) );
        $p->save();
    }
    return;
}

После зайти в скопированный ресурс и сохранить его, это прибьёт у всех дочерних слово Копия в алиасе и заголовке. Ну или плюс минус тот же код в Console запускать.
Константин Ильин
16 августа 2023, 09:51
0
Основной чанк, готовый код я дал выше, где вызывается галерея, просто копировать.

Нужно посмотреть tpl.gallery.image и его поправить, но код я тоже скинул в целом, остается только подставить значения

Читать по этому поводу особо нечего, просто нужна простая логика.

вы вызываете GalleryAlbums с чанком galAlbumRowWithCoverTpl
в этом чанке первая ссылка a data-fancybox="gallery-[[+id]]">

далее в этом чанке вызываете альбом через
[[!Gallery? &album=`[[+id]]` &thumbTpl=`tpl.gallery.image` ]]

Внутри tpl.gallery.image нужно сделать ссылки на изображения
a href=«изображение4» class=«hidden» data-fancybox="gallery-[[+album]]">
biper
16 августа 2023, 08:01
0
простите нубского падавана, ибо я вот опять на неопределенное время пропаду из города через час/два… потому задам вопрос на вырост себе и на момент появления снова: я вот пытаюсь понять, как сделать нечто, чего основ языка не знаю. Имеет момент сложностей перевода… Может просто подскажете что пока в разъездах почитать на эту тему, ибо напрягать вас своими глупостями как-то и неэтично вроде :)
Дмитрий
15 августа 2023, 18:14
0
Спасибо за помощь, Алексей!

Только у меня почему-то не переопределяется параметр fileSize. Я указываю &fileSize = `10485760`, а [[++upload_maxsize]] всё равно берется из системных настроек, у меня по умолчанию 1048576000 байт, то есть 1000 Мб. Извините, я ещё плохо знаком с modx, поэтому не всё пока понятно(
Андрей
15 августа 2023, 15:16
0
Там что-то связанное с страницами для карты сайта, я как-то убрал эту пагинацию
Если имеется ввиду разбиение sitemap.xml на несколько частей, то pdoPage в этом никак не может помочь.

Это делается через указание в robots.txt:
Sitemap: https://site.net/sitemap1.xml
Sitemap: https://site.net/sitemap/sitemap1.xml

Либо через индексный файл sitemap. Ну либо я чего то не понимаю =)

Почему в конкретно вашем случае рендер идёт со второй строки надо смотреть. Может есть какие то плагины на загрузку страницы, обработку контента и т.п.
Александр Быковский
15 августа 2023, 14:48
0
Добрый день. Такая же проблема и не пойму где искать решение
Vladimir
15 августа 2023, 14:45
0
Там что-то связанное с страницами для карты сайта, я как-то убрал эту пагинацию и не удалил запуск через pdopage но на других сайтах всё работате. вызвал чистый pdoSitemap в контенте так же на первой страницы, всё равно рендерит со второй строки
Константин Ильин
15 августа 2023, 14:42
0
Понимаю. В целом я тоже решение предложил, без кода всякого.
смысл такой что в data-fancybox должно быть одно название группы фото,
т.е. data-fancybox=«gallery-123» у всех ссылок одного альбома.

для превью мы выводим ссылку с изображением альбома и с атрибутом data-fancybox, а другие изображение как «пустые» скрытые ссылки но с таким же data-fancybox
и все работает. Не раз такое делал.
<li class="col-lg-4 col-6 thumb pic_gal"> <p style="text-align: center; color:white;">[[+name]] ([[+total]])</p>
    <a  data-fancybox="gallery-[[+id]]"   href="[[+url:is=``:then=`[[+image]]`:else=`[[+url]]`]]" [[+link_attributes]] 
    class="gallery-preview">
        [[+image:notempty=`<img src="[[+image]]" [[+cls:notempty=`class="[[+cls]] "`]] alt="[[+title]]" />`]]
    </a>
    [[!Gallery? &album=`[[+id]]` &thumbTpl=`tpl.gallery.image` ]]
    
</li>
Не знаю что у вас там в tpl.gallery.image но самое галвное в нем сделать атрибут data-fancybox=«gallery-[[+album]]» который должен быть похож как в основном чанке и как тег А сделать с сылкой на изображение. Возможно здесь не сработает album, точно не знаю какой там плейсхолдер указание id альбома
<a href="изображение4"  class="hidden"  data-fancybox="gallery-[[+album]]"></a>
Dan
Dan
15 августа 2023, 14:36
0
У него задача вывести обложки альбомов и по клику уже вывести в fancybox галерею одного альбома. Не стал ему предлагать ajax-подгрузку, ибо если он такой вопрос задал, то вряд ли справится. Поэтому предложил костыльное решение — вывести url-ы всех фото одного альбома в атрибут data-photos. По клику на обложку альбома должен инициализироваться fancybox с переданными в него url-ами фото.
У себя протестил — работает без проблем, автор видимо где-то ошибся
Константин Ильин
15 августа 2023, 14:31
0
Совсем не видно разницы?
то что у вас один тег A, а в примере на каждую фотографию альбома свой тег A

т.е. не в data-photos надо передавать, а вывести [[+photos]] как отдельные теги A.

может я не знаю, но data-photos вроде такого атрибута у fancybox нет.
biper
15 августа 2023, 13:54
0
<li class="col-lg-4 col-6 thumb pic_gal"> <p style="text-align: center; color:white;">[[+name]] ([[+total]])</p>

[[!Gallery? &album=`[[+id]]`&toPlaceholder=`photos`&thumbTpl=`tpl.gallery.image` ]]

    <a  data-fancybox="gallery-[[+album]]"   href="[[+url:is=``:then=`[[+image]]`:else=`[[+url]]`]]" [[+link_attributes]] 
    class="gallery-preview" data-photos="[[+photos:commaSeparate]]">
        [[+image:notempty=`<img src="[[+image]]" [[+cls:notempty=`class="[[+cls]] "`]] alt="[[+title]]" />`]]
    </a>
    
</li>
и что не так та?
Константин Ильин
15 августа 2023, 13:41
0
Так приведите код к примеру как в самом первом комментарии.
Это код одного(!) Альбома, т.е. одной группы изображений:
<li>
<a href="изображение" data-fancybox="gallery-[[+album]]">
    <img src="изображениеМини">
</a>
<a href="изображение2"  class="hidden" data-fancybox="gallery-[[+album]]"></a>
<a href="изображение3"  class="hidden"  data-fancybox="gallery-[[+album]]"></a>
<a href="изображение4"  class="hidden"  data-fancybox="gallery-[[+album]]"></a>
</li>
biper
15 августа 2023, 13:40
0
видимо, можно подставить еще какие то плейсхолдеры, чтобы сформировать путь к картинке ?! Или глупость изволю…? :)