Views
Прислано: streloc@drupal.org
чт, 28/01/2010 - 13:17
Делаю вывод текста(анонс новости) через views. Всё работает, но мне надо сделать ссылку на полную версию текста. Как сделать ссылку типа далее... я знаю, а вот как сделать чтобы 2 последних слова стали ссылками это не получается. Думаю что надо считать ввесь текст,удалить 2 последних слова, а потом вывести их как ссылка. Как это можно реализовать в VIEWS?
- streloc@drupal.org's blog
- Для комментирования войдите или зарегистрируйтесь
Кастомное поле делать с php-кодом
- Для комментирования войдите или зарегистрируйтесь
Кастомное поле делать с php-кодом
Создаю поле(называется - Пользовательский текст), но оно не даёт мне возможности ввести код, только текст.
- Для комментирования войдите или зарегистрируйтесь
Я вам не скажу точно, но во вьюсе есть поля, куда можно размещать php-код
- Для комментирования войдите или зарегистрируйтесь
Полей не нашёл, но допустим найду. А как из него можно влиять на вывод текста.
А если по другому. Я могу вывести вьюс вот так
<?php$view = views_get_view('Teaser');
$view->set_display('1');
$view->set_arguments('');
$view->execute_display();
$new_teaser=$view->render();?>Как можно разобрать этот код?
- Для комментирования войдите или зарегистрируйтесь
Допустим у вас вывод по полям, или как он там, я с вьюсом дружу не очень, я модуле-писатель, исключаете боди, на его место вставляете пхп-поле, там проводите действия, которые описали в топике и ПРОФИТ
- Для комментирования войдите или зарегистрируйтесь
я с вьюсом дружу не очень, я модуле-писатель
Извините, что уже не в тему.
<?php
$listlength=10; // количество документов в списке
$result1 = pager_query(db_rewrite_sql("SELECT n.nid, n.created FROM {node} n WHERE n.type = 'blog' AND n.status = 1 ORDER BY n.created DESC"), $listlength);
while ($node = db_fetch_object($result1)) {
$output .= node_view(node_load(array('nid' => $node->nid)), 1);
}
print $output?>А как здесь вывести дату, контетн, и пользователя
- Для комментирования войдите или зарегистрируйтесь
Дык, а у вас же node_view() происходит, он же выводит и юзера и дату и контент, в чём проблема то?
- Для комментирования войдите или зарегистрируйтесь
надо каждое поле по отдельности, чтобы потом извращаться
- Для комментирования войдите или зарегистрируйтесь
Тип контента простой или с CCK-полями?
- Для комментирования войдите или зарегистрируйтесь
с CCK-полями? да мне хоть одно поле вывести, а там я по подобию
- Для комментирования войдите или зарегистрируйтесь
Просто тут выбор стратегии, грузить ноду или дёрнуть простым запросом, то что требуется
- Для комментирования войдите или зарегистрируйтесь
Мне надо. Получить дату, юзера, текст, и ссылку на полную версию. Каждое поле получать отдельно, чтобы можно было потренироваться. Спасибо за терпение. Обучаюсь
- Для комментирования войдите или зарегистрируйтесь
Ладно, универсальный способ:
$listlength=10; // количество документов в списке $result1 = pager_query(db_rewrite_sql("SELECT n.nid, n.created FROM {node} n WHERE n.type = 'blog' AND n.status = 1 ORDER BY n.created DESC"), $listlength); while ($node = db_fetch_object($result1)) { $nodeobj = node_load($node->nid); /* $nodeobj->created - дата создания ноды в unixtime $nodeobj->changed- дата изменения ноды в unixtime $nodeobj->teaser - тизер ноды, текстовый $nodeobj->body - полный текст l($nodeobj->title, 'node/'.$nodeobj->nid) - эта функция вернёт ссылку на ноду, если есть алиас, то алиас ноды $nodeobj->uid - uid автора CCK-поля, общий вид такой: $nodeobj->field_название поля Например первое значение текстового поля c именем note будет: $nodeobj->field_note[0]['value'] В остальном, советую использовать var_dump(), var_export(), print_r(), уес */ }
- Для комментирования войдите или зарегистрируйтесь
Огромное спасибо. Супер.
- Для комментирования войдите или зарегистрируйтесь
А как из
<?php$nodeobj->uid - uid автора
?>- Для комментирования войдите или зарегистрируйтесь
$nodeobj->name
- Для комментирования войдите или зарегистрируйтесь
Ребят, подскажите, правильно ли я понимаю, что Views может решить следующую задачу?:
Понадобилось мне в админке Ubercart на определенной странице вывести нужный мне текст путем простого его внедрение в код HTML (много раз такое делал в других CMS, например в vBulletin все очень просто), но не тут то было, в Drupal (Ubercart) генерируемый HTML код настолько заточен и перемешан с PHP, что сделать это оказалось очень не просто, чего я не ожидал.
Скажите, Views здесь поможет или нужно другое решение?
- Для комментирования войдите или зарегистрируйтесь
C Ubercart не работал. Views снёс и теперь всё вывожу из базы простыми запросами. Так что думаю что всё возможно.
- Для комментирования войдите или зарегистрируйтесь

Комментарии