pdoMenu ругается на содержимое modWebLink

Обновил pdoTools до последнего,
В логах сыпется это:

И вот строчки, о которых говорится в логах

И ещё одна


Как понять, что не так?)
Klike
02 ноября 2016, 21:12
1
638
0

Комментарии: 10

Александр
03 ноября 2016, 01:59
1
0
Вызов какой у Вас? И версия php?
    Klike
    03 ноября 2016, 02:03
    0
    {'pdoMenu'|snippet:[
        'parents' => 4,
        'tplParentRow' => 'tpl.ParentRowAjax',
        'outerClass' => 'left-menu categories',
        'scheme' => 'uri',
        'templates' => 2,
        'level' => 3,
        'showLog' => false,
    ]}
    Версия php 7.0.10
      Александр
      03 ноября 2016, 05:11
      0
      7рка строгая очень, увы, с ней знаком плохо.
      Темнеменее 7ой версией пользуются в последнее время часто и с подобными проблемами вроде не сталкивались. Тут или Вы упустили важное обновление php (например 7.0.11), которое могло повлиять на данную функцию, или настройки к функциям черезмерно строгие. Боюсь, исправив данную проблему, легко посыпятся другие.
      Но если уж говорить о исправлении ситуации, в фун-ию надо подставить строку, php воспринимает строчку, как массив.
      Допишите выше:
      $contentRow = $row['content'] . '';
      А в фрагментах, указанных Вами поменяйте $row['content'] на $contentRow
      Сразу оговорюсь, мое решение неправильное, но рабочее.
      Хотя судя по тому, что Вы пользуетесь fenom и работаете на 7рке, опыта для такого решения у Вас должно быть достаточно
      Александр
      03 ноября 2016, 05:34
      0
      Хотя можно попробовать более изящное решение…
      1) На всякий случай, приложение у Вас привязано к modx.com или к modstore? В офф репозитории обновления могут отставать от modstore. Если pdoTools все же привязано к офф репозиторию, попробуйте деинсталировать и удалить, потом скачать с modstore.
      2) Если у Вас в данном примере класс ресурса только «документ» (а не символическая ссылка допустим), попробуйте поставить параметр в вызов 'useWeblinkUrl ' => false.

      На крайний случай можно всегда откатиться до предыдущей версии pdoTools или использовать вместо pdoMenu — pdoResources
        Klike
        03 ноября 2016, 15:59
        0
        Спасибо за отзывчивость! На самом деле всё было гораздо проще)
        Пробежался по всем Документам-ссылкам, и оказалось, что в одном из них куда-то делся символ «~»
        вместо [[~12]] было: [[12]]. Поправил, Теперь ошибок нет) Мда)
Василий Наумкин
03 ноября 2016, 05:39
0
Функция trim() ожидает строку, а был передан массив.

Каким образом у вас массив оказался в содержимом modWebLink?
    Klike
    03 ноября 2016, 16:00
    0
    Спасибо, Василий!
    Ответ тут: #comment-69908
      Александр
      03 ноября 2016, 16:15
      0
      очень странно, [[12]] должно было игнорироваться в формировании ссылок и восприниматься, как вызов некешированного сниппета
Klike
03 ноября 2016, 16:00
0
del