Здравствуйте!
Подскажите как получить в group_header.tpl.php количество записей типа контента (к примеру с id = 11) для текущей группы
(ТК создаётся только в группе)
Здравствуйте!
Подскажите как получить в group_header.tpl.php количество записей типа контента (к примеру с id = 11) для текущей группы
(ТК создаётся только в группе)
Достать количество материала, подсчитать количество подписчиков, умножить\разделить\прибавить как надо и умножить рейтинг группы на этот коэффициент.
С Новым годом! Всем добра
Кто-нибудь может подсказать как это реализовать в коде?
Всем мира!
Подскажите в () таком деле:
Нужно в шаблоне группы вывести некий объект (div и пара ссылок), вот только чтобы он был виден только владельцу этой группы (можно + модераторам)
Вот прописываю такое условие:
<?php if ($this->cms_user->id == $group['owner_id'] || $this->cms_user->is_admin) { ...} ?>
Однако непонятна $cms_use
Undefined property: cmsTemplate::$cms_user in /templates/goodtheme/controllers/groups/group_header.tpl.php
Хотя
$user = cmsUser::getInstance();
в начале group_header.tpl.php
Вот только изложил здесь и допер что тупанул)
if ($user->id == $group['owner_id'] || $user->is_admin){ echo '1'; }
public function getFilterInput($value = false) { return html_checkbox($this->name, (bool) $value); } public function applyFilter($model, $value) { return $model->filterNotNull($this->name); }и появится кнопка вывода в фильтре.
Эти методы оказываются уже были
public $filter_type = 'str';А в строке
public $allow_index = false;замените false на true. А если такой строки нет, то добавьте. Может сработать.
Спасибо, сработало
public $filter_type = 'str'; включает фильтр в настройках поля и в списке записей
public $allow_index = true; включает возможность фильтрации в наборах
А что такое $image_field? Если это поле и оно есть в массиве записи, то легче в шаблоне условие прописать.
Если $image_field не установлена — изображения нет (проверял)
Тут делается выборка из базы, но не пойму как условие добавить в $filter в плане синтаксиса. Если поставить условие в шаблоне то будет выводиться так: Например в настройках виджета выводить 20 записей, из них 17 с изображениями и выведет только 17!
denmois, а вариант создать набор в котором это поле заполнено и вывести этот набор в виджете не пробовали?
Именно это и подсказывал Нифигаccе о-го-гошеньки, но проблема в том, что для этого поля (измененное набор изображений) не предусмотрено фильтра в наборе. Поэтому вижу только вариант с правками виджета
Нифигаccе о-го-гошеньки, спасибо, но в том то и дело, что уже использую несколько измененный набор изображений от Goodmade
Поэтому хотелел для виджета условие добавить чтобы только с изображением. Только не знаю как синтаксис AND "...."
Или так не получится? и только к моему набору фильтр приделывать?
Доброго дня!
Как прописать условие чтобы виджет Список контента показывал записи только с фото $image_field ???
widget.php
<?php if ($parents){ foreach($parents as $parent){ if ($parent['id'] == $relation_id){ $filter = "r.parent_ctype_id = {$current_ctype['id']} AND ". "r.parent_item_id = {$current_ctype_item['id']} AND ". "r.child_ctype_id = {$ctype_id} AND ". "r.child_item_id = i.id"; $this->disableCache(); $model->joinInner('content_relations_bind', 'r', $filter); $this->title = string_replace_keys_values($this->title, $current_ctype_item); $this->links = str_replace('{list_link}', href_to($current_ctype['name'], $current_ctype_item['slug'], "view-{$ctype['name']}"), $this->links); break; }
У меня работает с такими настройками
SMTP Сервер: smtp.beget.com
SMTP Порт: 465
SMTP Авторизация: вкл
SMTP Пользователь: ***
SMTP Пароль: ***
SMTP Шифрование: SSL
Должна быть создана почта для домена SMTP_Пользователь@ваш_домен.ru
Доброго дня! Подскажите такой момент:
Объединение CSS и JS файлов происходит в main.tpl.php
<?php $this->addMainTplCSSName('theme-modal'); ?> <?php $this->addMainJS('templates/default/js/jquery.js', true); ?>
Но туда добавляются не все CSS и JS.
Можно ли в этот же файл добавить стили и скрипты компонентов?
wysiwyg.class.php
<?php $template->addJSFromContext('wysiwyg/tinymce/files/tinymce.min.js'); ?>
list.tpl.php
<?php $this->addTplJSName('comments'); ?>
<?php $tpl->addCSSFromContext($tpl->getTplFilePath('controllers/explist/css/style.css', false), false); ?>
или если не добавлять в общий, как добавить для них атрибут async ?
Ведь, например, для комментариев не критично загружать CSS и JS в начале
Lora, жму руку, от души, помог
Правильно говорите, заменил метод public function routeAction($action_name)
но и индекс тоже надо убрать!
Если в 3 строку:
'datasets' => $datasets, 'base_ds_url' => href_to_rel('groups') . '/index%s', 'dataset_name' => $dataset_name, 'dataset' => $current_dataset, 'h1_title' => $h1_title, 'user' => $this->cms_user, 'groups_list_html' => $this->renderGroupsList($page_url, $dataset_name) ), $this->request); }
переписать так:
'base_ds_url' => href_to_rel('groups') . '%s',
Ссылка на первую вкладку получается как надо /groups, но остальные вкладки /groups/nabor1 не работают (404)
Можно ли как-то задать условие, что только для первого набора?
Или чтобы остальные работали без. /index/
Не выходит. Точнее не выходит как нужно
Для первого набора так и осталось groups/index
Для остальных стало groups/наименование_набора и бонусом виджеты пропали)
Всех с праздником Святой Пасхи!
Lora, спасибо за совет! Попробовал, ссылки на наборы получились вида groups/наименование_набора, и при переходе -> 404
Добрый день, форумчане. Нужен совет
В компоненте группы в наборы имеют url такого вида groups/index/наименование_набора
А ссылка первого набора имеет такой вид groups/index
Как сделать её вида /groups ??? (для перврго набора)
v2.13
\system\controllers\groups\actions\index.php
'datasets' => $datasets, 'base_ds_url' => href_to_rel('groups') . '/index%s', 'dataset_name' => $dataset_name, 'dataset' => $current_dataset, 'h1_title' => $h1_title, 'user' => $this->cms_user, 'groups_list_html' => $this->renderGroupsList($page_url, $dataset_name) ), $this->request); }
\templates\default\controllers\groups\index.tpl.php
<h1> <?php echo $h1_title; ?> <?php if($dataset_name){ ?> <span> / <?php echo $dataset['title']; ?></span> <?php } ?> </h1> 'datasets' => $datasets, 'dataset_name' => $dataset_name, 'current_dataset' => $dataset, 'base_ds_url' => rel_to_href($base_ds_url) )); } ?> <?php echo $groups_list_html;
Благодарю
Все предусмотрено оказывается, только нужно глаза открыть)))
в template.php такой код
Можно заменить
echo '<meta name="keywords" content="' . html((!empty($this->metakeys_item) ? string_replace_keys_values_extended($this->metakeys, $this->metakeys_item) : $this->metakeys), false) . '">' . "\n\t\t"; }На
$keywords = string_replace_keys_values_extended($this->metakeys, $this->metakeys_item); $keywords: $this->metakeys), false) . '">' . "\n\t\t"; } }
Так работает как надо. Благодарю