Картинка страницы - тег {content_image}

Обсуждение CMS Made Simple в России.

Moderators: iturbay, wdwp

Post Reply
hippycore
Forum Members
Forum Members
Posts: 19
Joined: Wed Oct 20, 2010 8:38 am

Картинка страницы - тег {content_image}

Post by hippycore »

Прошу помощи. Проблема следующая:
Сайт представляет собой каталог автомобилей, но изначально не задумывался как каталог, в следствии чего модуль Cataloger не был использован и страницы имеют тип 'Контент'.
Теперь же требуется чтобы у каждой страницы была возможность загрузки картинки обозначающей данную страницу и вывода этих картинок на странице родителе, вообщем все как в модуле Cataloger. Причем на странице содержится 4 раздела и на каждый раздел приходится по 2 блока контента (один блок это описание а другой тег фотоальбома с фотками к этому разделу).
Сейчас когда создано околу двух сотен страниц к которым привязано еще больше фотоальбомов очень сложно будет перевести все в формат каталога.
Я воспользовался тегом  {content_image} чтобы добавлять картинки к страницам и написал свой тег чтобы можно было получать картинки всех подстраниц для страницы.

Вроде все ок, но {content_image} дает загружать картинки только через выпадающее меню и из одной категории. А для меня это очень неудобно.

Решение данного вопроса я вижу 2:
  • Либо каким то магическим способом перевести все страницы в формат каталога  :-\.
  • Либо сделать удобную заливку картинок через {content_image}. Можно сделать просто форму загрузки файла или подключить какой нибудь ajaxfilemanager
Второй вариант для меня намного более предпочтительнее.


Если объяснить все покороче то мне нужно чтобы при использовании тега {content_image} выбирать картинки не через выпадающее меню а через какой либо файловый менеджер либо загружать их прямо с компа.

Фух.. надеюсь более менее понятно изложил суть моей головной боли. Очень прошу помочь.
hippycore
Forum Members
Forum Members
Posts: 19
Joined: Wed Oct 20, 2010 8:38 am

Re: Картинка страницы - тег {content_image}

Post by hippycore »

Решил путем переписания функции _display_image_block($blockInfo,$value,$adding) из файла /lib/classes/contenttypes/Content.inc.php (758).
Сделал вместо выпадающего списка вызов обозревателя CKFinder.

Code: Select all

	private function _display_image_block($blockInfo,$value,$adding)
	{
		global $gCms;
		$config =& $gCms->GetConfig();
		$dir = cms_join_path($config['uploads_path'],$blockInfo['dir']);
		$optprefix = 'uploads';
		if( !empty($blockInfo['dir']) ) $optprefix .= '/'.$blockInfo['dir'];
		$inputname = $blockInfo['id'];
		if( isset($blockInfo['inputname']) )
		{                                                       
			$inputname = $blockInfo['inputname'];
		}
                //Стандартное выпадающее меню
		//$dropdown = create_file_dropdown($inputname,$dir,$value,'jpg,jpeg,png,gif', $optprefix,true);                                                        		
        if( $dropdown === false )           
		{
			$dropdown = lang('error_retrieving_file_list');
		}
		$dropdown = '<input id="xFilePath" value="'.$value.'" name="'.$inputname.'" type="text" size="60" />
        <input type="button" value="Обзор" onclick="BrowseServer();" />';
        if(isset($value) && $value != ''){
        $image='
        <hr />
        <div class="">Миниатюра страницы:</div>
        <img src="/image.php?image=/'.$value.'&width=200" />';
          $dropdown = $dropdown.$image;
        }      
		return $dropdown;
	}
Получилось мило =)
Image
Post Reply

Return to “Russian - русский”