We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 43754
    • 19 Posts
    Всем привет.
    Достался на доработку сайт на modx evo. В переменных шаблона есть переменная с типом Custom Type / Custom Variable и значением @INCLUDE assets/customTv/multiImage.php
    Данного файла на сервере нет и у ресурса, который использует шаблон с этой TV, на месте этой TV написано R:/OpenServer/domains/str/public_html/assets/customTv/multiImage.php does not exist (ну естественно).
    Вот код сниппета, который обрабатывает значения этого поля:
    <?php
    
    if (!$id || !$tpl) { return; }
    
    $xtv = isset($xtv) ? $xtv : 'multiImage';
    $width = isset($width) ? $width : 0;
    $height = isset($height) ? $height : 0;
    
    
    $output = '';
    $_var = $modx->getTemplateVar($xtv, '*', $id);
    if ($_var['value']) {
        $_var = explode('||', $_var['value']);
        if (isset($reverse) && $reverse) {
            $_var = array_reverse($_var);
        }
        $iSize = sizeof($_var);
        $imgCount = isset($imgCount) && $imgCount < $iSize ? $imgCount : $iSize;
    	for($i=0;$i<$imgCount;$i++) {
            $image = substr($_var[$i], 0, strpos($_var[$i], '::'));
    		$image = $_var[$i];
            $parseChunkParams = array();
    		if ($width || $height) {
    	        $snipParams = array('src' => $image, 'ky' => 0.5);
        	    if ($width) { $snipParams['width'] = $width; }
            	if ($height) { $snipParams['height'] = $height; }
    	        $parseChunkParams['prevImage'] = $modx->runSnippet('Resizer', $snipParams);
    		} else {
    			$parseChunkParams['prevImage'] = $image;
    		}
            $parseChunkParams['origImage'] = $image;
            $output .= $modx->parseChunk($tpl, $parseChunkParams, '[+', '+]');
        }
    } else {
        $output .= isset($defImg) ? '<img src='.$defImg.' />' : (isset($noResult) ? $noResult : 'Нет изображений');
    }
    return $output;
    

    Собственно, я так понимаю, мне нужно в этом поле получить значения путей картинок, как это сделать, чтобы можно было пользователю в админке выбрать изображения с помощью диалога выбора картинок? Хотелось бы понять, как это работало