X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Переменные шаблонов альфы
Z1dan3
сообщение 2011-10-18, 10:52
Сообщение #1
Invision Power
Иконка группы

Группа: Дизайнеры
Сообщений: 268
Регистрация: 2008-12-13
Из: Украина

Репутация:   нет  
Всего: 14


В альфе новая система вывода переменных, она использует php, однако мне надо выводить например не все подряд данные о новости, а только например категорию и тайтл. Как это осуществить? Раньше можно было с помощью {category} & {date}, a сейчас?
Перейти в начало страницы
+Цитировать сообщение
Djadka
сообщение 2011-10-18, 14:11
Сообщение #2
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 463
Регистрация: 2010-10-17

Репутация:   нет  
Всего: нет


echo'<span class="arg">'.$top['category'].'</span>';    
Перейти в начало страницы
+Цитировать сообщение
Z1dan3
сообщение 2011-10-18, 15:57
Сообщение #3
Invision Power
Иконка группы

Группа: Дизайнеры
Сообщений: 268
Регистрация: 2008-12-13
Из: Украина

Репутация:   нет  
Всего: 14


А понятней можно? Что-то не въехал.
Перейти в начало страницы
+Цитировать сообщение
Djadka
сообщение 2011-10-18, 17:38
Сообщение #4
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 463
Регистрация: 2010-10-17

Репутация:   нет  
Всего: нет


Цитата (Z1dan3 @ 2011-10-18, 16:57)
А понятней можно? Что-то не въехал.

Берём родной шаблон Униел, в нём есть файл Base.php, данный файл отображает с новостей данные. В данном шаблоне разберём вот этот код:
<?php
if(isset($top))
{
	echo'<div class="moreinfo">';
	foreach($top as &$v)
		if($v!==false)
			echo'<span class="arg">'.$v.'</span>';
	echo'<div class="clr"></div>
	</div>';
}
?>

В данном участке выводится такие данные как:
Размещено: 27 сентября 2011 14:47Категория: Наши новостиКомментариев: 0Разместил: Djadka
Для того что бы вывести отдельные части того что находится в голове надо вместо того что выше воспользоваться например вариантом таким:
<div class="example"><?php echo$top['category']?></div>
Вариаций конечно может быть много но что то в этом роде должно быть, если выводить варианты.
Перейти в начало страницы
+Цитировать сообщение
Z1dan3
сообщение 2011-10-18, 20:46
Сообщение #5
Invision Power
Иконка группы

Группа: Дизайнеры
Сообщений: 268
Регистрация: 2008-12-13
Из: Украина

Репутация:   нет  
Всего: 14


Djadka, примного благодарен! :drinks:
Перейти в начало страницы
+Цитировать сообщение
Z1dan3
сообщение 2011-10-25, 0:02
Сообщение #6
Invision Power
Иконка группы

Группа: Дизайнеры
Сообщений: 268
Регистрация: 2008-12-13
Из: Украина

Репутация:   нет  
Всего: 14


Обратился напрямую к Александру, вот ответ(может кому тоже пригодится):
Файл modules\news\Template\Classes\UserNews.php

Функция ShowNews($arr,$u,$category,$rating,$cnt,$page,$voting) и private static function NList($data)
Первая - отвечает за подробный просмотр новости, а вторая - за новости в списке.

Тут есть такой участок:
            
$c.=Eleanor::$Template->Base(array(
				'top'=>array(
					'published'=>sprintf($lang['published_'],Eleanor::$Language->Date($v['date'],'fdt')),
					'category'=>isset($data['ucats'][$v['_cat']]) ? sprintf($lang['category_'],'<a href="'.$data['ucats'][$v['_cat']].'" title="'.strip_tags($GLOBALS['Eleanor']->Categories->dump[$v['_cat']]['description']).'">'.$GLOBALS['Eleanor']->Categories->dump[$v['_cat']]['title'].'</a>') : false,
					'comments'=>sprintf($lang['comments_'],$v['comments']),
					'author'=>sprintf($lang['publisher_'],$v['author_id'] ? '<a href="'.Eleanor::$Login->UserLink($v['author'],$v['author_id']).'" rel="author">'.$v['author'].'</a>' : $v['author']),
				),
				'bottom'=>array(
					'readmore'=>$v['_readmore'] ? '<a href="'.$v['_url'].'#more">'.$lang['readmore'].'</a>' : false,
					'voting'=>$v['voting'] ? ' <a href="'.$v['_url'].'#voting">'.$lang['voting'].'</a>' : false,
					'status'=>$status,
					'rating'=>Eleanor::$vars['publ_rating'] ? $data['rating'][$v['id']] : false,
					'edit'=>($isa or $uid==$v['author_id'] and $uid) ? Eleanor::$Template->EditDelete($GLOBALS['Eleanor']->Url->Construct(array('do'=>'edit','id'=>$v['id']),true,''),$GLOBALS['Eleanor']->Url->Construct(array('do'=>'delete','id'=>$v['id']),true,'')) : false,
				),
				'title'=>$v['_readmore'] ? '<a href="'.$v['_url'].'">'.$v['title'].'</a>'.($v['_getmore'] ? ' <a href="#" data-id="'.$v['id'].'" data-more="#more-'.$v['id'].'" data-pages="#pages-'.$v['id'].'" class="getmore"></a>' : '') : $v['title'],
				'text'=>$v['text'].($v['_getmore'] ? '<div id="more-'.$v['id'].'" style="display:none"></div><div id="pages-'.$v['id'].'" style="display:none"></div>' : '').($ntags ? '<div class="tags">'.sprintf($lang['tags_'],rtrim($ntags,', ')).'</div>' : ''),
			));


'text'=>$v['text'].($v['_getmore'] ? '<div id="more-'.$v['id'].'" style="display:none"></div><div id="pages-'.$v['id'].'" style="display:none"></div>' : '').($ntags ? '<div class="tags">'.sprintf($lang['tags_'],rtrim($ntags,', ')).'</div>' : ''),


Замените на:

                
'text'=>$v['text'].($v['_getmore'] ? '<div id="more-'.$v['id'].'" style="display:none"></div><div id="pages-'.$v['id'].'" style="display:none"></div>' : ''),
                'tags'=>$ntags ? sprintf($lang['tags_'],rtrim($ntags,', ')) : '',
                'views'=>$v['reads'],
                'comments'=>$v['comments'],

впроде все. Тогда в Base будут доступны переменные $tags, $views и $comments

Аналогично и для другого участка.
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
0 чел. читают эту тему (гостей: 0, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0433 сек.    11 запросов    GZIP включен    Сейчас: 2020-10-27, 6:53