Вы не зашли.
vitaly, Отлично:) То что надо.
Подскажите, как вывести только список дочерних категорий определенной категории в news.categories.tpl? что-то я запутался в твиге)
FOQRussia, У вас с экраном что-то. На скрине они есть. Рамки полей светлосерые. (такая же проблема на старом ноуте)
0.9.3 + SVN [SVN1108+]
возможно, у меня что-то не так. хотя, на двух сайтах такое... главное, страницы нормально работают.
нет. все правильно, вроде, у меня. При том на скрине видно чем у меня альт.поля заполнены.
Адреса страниц в статике не правильно отображаются. (или может я что-то не так делаю)
юкоз это что-то другое. типа, конструктор. я бы не стал его сравнивать с цмс.
поля xfields не работают в плагине top_news
плагин top_news должен во многом помочь. смотрите его.
vitaly, Возможно. Гляну, поразбираюсь. Спасибо за ответ.
Ни кто не подскажет? как-то сюда надо вывести шаблон категории "$template['vars']['mainblock'] =" вместе с переменной $filtered. Исковырял news.php, ни чего правильно подходящего не нашел пока.
Подскажите как вывести отфильтрованые новости прямо в текущей категории. т.е. в шаблоне news.table.tpl, используя плагин xfilter. Вот код плагина:
<?php
if (!defined('NGCMS')) die ('HAL');
include root.'includes/news.php';
add_act('index', 'xfilter');
function xfilter() {
global $twig, $template, $mysql, $tpl, $lang;
$filter = array();
$tVars = array();
include root.'conf/extras/xfields/config.php';
foreach ($xarray['news'] as $id => $data) {
switch ($data['type']) {
case 'text' : $val = '<input type="text" name="xfields_'.$id.'" title="'.$data['title'].'" value="'.secure_html($data[$id]).'" />';
break;
case 'select': $val = '<select name="xfields_'.$id.'" >';
if (!$data['required']) $val .= '<option value=""> Не важно</option>';
if (is_array($data['options']))
foreach ($data['options'] as $k => $v) {
$val .= '<option value="'.secure_html(($data['storekeys'])?$k:$v).'"'.((($data['storekeys'] && ($xdata[$id] == $k))||(!$data['storekeys'] && ($xdata[$id] == $v) || ($_REQUEST["xfields_$id"] == $v)))?' selected':'').'>'.$v.'</option>';
}
$val .= '</select>';
break;
case 'textarea' : $val = '';
break;
case 'images' : $val = '';
break;
}
$tVars["xfields_$id"] = $val;
$xpaginparams["xfields_$id"] = $_REQUEST["xfields_$id"];
$tpath = locatePluginTemplates(array('xfilter','xfilter_form'), 'xfilter', 1);
$xf = $twig->loadTemplate($tpath['xfilter_form'].'xfilter_form.tpl');
$template['vars']['xfilter'] = $xf->render($tVars);
if ($_REQUEST["xfields_$id"]) {
array_push($filter, array('DATA',"xfields_$id", '=', secure_html($_REQUEST["xfields_$id"])));
}
}
$paginationParams = array('pluginName' => 'news', 'pluginHandler' => 'main', 'xparams' => $xpaginparams, 'paginator' => array('page', 1, false));
$callingParams = array('style' => 'short', 'customCategoryTemplate' => true);
if ($_REQUEST['page']) {
$callingParams['page'] = intval($_REQUEST['page']);
}
if ($filter) {
array_unshift($filter, 'AND');
$filtered = news_showlist($filter, $paginationParams, $callingParams);
if ($filtered) {
$template['vars']['mainblock'] = $filtered;
}
else {
$template['vars']['mainblock'] = '';
msg(array("type" => "info", "info" => $lang['msgi_no_news']));
}
}
}
В данный момент он выводит в main.tpl через переменную {mainblock}. Самостоятельно подправить пробовал, не получается... знаний не хватает.
Список (на основе плагина xfilter):
1. Плагин xfields должен генерировать переменную {xfilter}. Которая в свою очередь вставляется в шаблон main.tpl или news.table.tpl. И выводит на странице сайта доп.поля в виде "input type=text" и "select", и с кнопкой, типа, submit. При нажатии на которую, список коротких новостей фильтруется под выбранные значения из доп.полей на текущей странице.
2. Переменная {xfilter} формируется из шаблона xfilter_form.tpl, в котором доступны переменные доп.полей, типа, {xfields_имя}.
Вот. Как-то так пока)
Скажите, это только у меня одного категории не хотят брать шаблоны news.table.tpl из папок в ncustom? В настройках категории назначаю нужный "шаблон для категори". news.short.tpl и news.full.tpl работают, а news.table.tpl используется по умолчанию, который лежит в корне общего шаблона сайта. Из отдельного каталога ncustom не берется.
easmik, Да, помогло. Только другую проблему заметил. Шаблоны news.table.tpl из папок в ncustom не хотят работать.
Спасибо. Вроде, работает. Правда, многое надо допилить. А лучше этот функционал в плагин xfields вставить.
Обновился с 880 до 1108. Админка работает. Вместо сайта появляется это:
NGCMS Runtime error: Class __TwigTemplate_774bfeebb3d00af3edc3b6257429eb0e contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Twig_Template::doDisplay)
[ 1]: Class __TwigTemplate_774bfeebb3d00af3edc3b6257429eb0e contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Twig_Template::doDisplay)Stack traceLine # File name
162 Z:\home\restline\www\engine\cache\twig\77\4b\feebb3d00af3edc3b6257429eb0e.php
Кэш почистил (удалил содержимое папки /engine/cache/twig), сайт заработал, но вместо {mainblock} (точнее, что должно быть вместо него) в категориях показывается это:
Категория:
{category.name}
[icon] [icon.preview][/icon.preview] [icon.preview][/icon.preview] {category.info} [/icon]
{entries}
Статические страницы работают нормально.
Нужно подобное. При заходе на сайте в категорию со списком коротких новостей, слева расположен блок с фильтрами (опциями), например, выпадающие списки (которые будут заранее сформированы из доп.полей). При нужном выборе и нажатии кнопки "показать", список новостей фильтруется по выбранным параметрам.
Тоже интересно. Подскажите пример хака или т.п. как отсортировать в категории прямо на сайте, выбрав значение (например, из выпадающего списка).
easmik, не знаю. наткнулся случайно в поиске, решил написать)) тема-то полезная
Пару магазинов сделал на Шопосе. Очень похоже по структуре с НГ. Удобно.
_http://forum-centr.ru/
_http://www.klinika10.ru/
_http://tad72.ru/ - заморожен. заказчик что-то тормозит с материалом.
_http://sinezh.ru/ - на сайте NG-CMS в "примеры сайтов" поправте на мое имя
Сложный? Если сроки не напрягают, могу сверстать в свободное время.
vip, Версия 0.11 помогла. Спасибо. Но откатывать с 0.13 на 0.11 не стал. Решил таким способом:
<div style="display:none;"><img id="img_src" src="[xvalue_imgev]" /></div>
<script type="text/javascript" language="javascript">
var imgev = document.getElementById('img_src').src;
var u = window.location.href;
var t = encodeURIComponent('{title}');
var c = encodeURIComponent('{short-story}');
var left = (screen.width-700)/2;
var top = (screen.height-400)/2;
</script>
...
<!--VK-->
<td class="text_ico" width="120" style="cursor:pointer" onclick="window.open('http://vkontakte.ru/share.php?url='+u+'&title='+t+'&image='+imgev+'&description='+c,'vk','toolbar=0,status=0,width=700,height=400,left='+left+',top='+top);">
<img src="/templates/restline/images/3_soc.png" width="70" height="71" /><br /><br /><br />ВКонтакте</td>
<!--/VK-->
...
Вывел картинку в скрытом блоке, а потом взял у нее src. Теперь в контакт отправляется все что нужно:)