Отдельная страничка для сниппета

Аватар пользователя Shield Shield 2 июня 2008 в 11:02

Итак, мысль простая - нужно выделить для одного сниппета отдельную страничку. Без скина друпала и лишних тегов. Просто показа сниппета и не больше. + нужно чтобы анонимус который не может смотреть статьи сайта мог видеть сниппет.

Думаю что решение простое просто сам ещё не нашёл.

Комментарии

Аватар пользователя olk olk 2 июня 2008 в 11:16

Ну самое простое , наверное создать любой тип материала доступный для просмотра гостям (или создать такой тип),
завести материал - посмотреть какой нид у созданой ноды, и создать в теме файлик
page-node-тут-nid.tpl.php (например page-node-16272.tpl.php) и убрать оттуда все лишнее

Аватар пользователя olk olk 3 июня 2008 в 10:29

Ну нода естественно должна быть с фильтром php-code иначе php-сниппет не получиться Smile
вот для проверки попробовал у себя:
завел ноду типа page c php-фильтром, в боди написал

<?php print('hello'); ?>

файлик page-node-16893.tpl.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head />
<body>
<?php print $content ?>
</body>
</html>

вроде все работает

Аватар пользователя Shield Shield 2 июня 2008 в 16:36

Создал ноду но тут ведь в пользователях - контроль доступа анонимус не имеет права просматривать материалы сайта! Создаю тип материала но где настроить его опции просмотра? Тоесть допустим Data4All/Data4All я сделаю тип материала. Зареганый может редактировать такой вид материала но анонимус чтоб просматривал - этого нет. Есть криэйт, эдит и тому подобное.

Далее я так и делал - созидал пхп-ноду. Она фурычит. Но как же её заставить работать с юзером?

Подробнее можно о том как в тему вставить это? Просто найти в каталоге файл и перенести в гарланда папку например? И из этой же папки его спрашивать?

Спасибо.

Аватар пользователя Shield Shield 2 июня 2008 в 19:25

Итак, в итоге приём удался, спасибо, но опять я вижу как надо, а вот через другой не вошедший комп - запрещено! То есть надо способ дабы открыть именно эту страницу для всех не вошедших. Ведь её должны смотреть боты а не люди и ботам труднее это написать.

Аватар пользователя Portnov Portnov 2 июня 2008 в 21:41

Теоретически, можно просто написать отдельный пхп-файл, выводящий нужную информацию. Только если хочется использовать api друпала и/или модулей - нужно за-include-ить соответствующие файлы, тут я не знаю, какие правильнее.

Аватар пользователя Shield Shield 2 июня 2008 в 22:37

В этом-то и вопрос... А как вообще устроен вход у друпала? Может быть мне легче каким-то способом заставить бота войти на сайт?

Аватар пользователя olk olk 2 июня 2008 в 22:49

Я что то не пойму у вас что в доступе не стоит доступа анонимусов
для модуле node -> access content (доступ к содержимому сайта) ???
Тогда для чего такой секретный сайт Lol ?
Ну если уж так надо то создайте при помощи своего модуля новый тип материала, перопределите функцию user_access? заведите ноду этого типа, и дайте в ролях доступ анонимусу на просмотр данного типа ноды (если остальные у вас такие засекреченные Smile
а вообще я думаю, что вы просто забыли поставить флажок в ролях для анонимусов, доступа к контентку ноды !

Аватар пользователя Shield Shield 3 июня 2008 в 10:17

Вот в контент акцессе и была проблема. Надо было его поставить. Да, секретный - не моё творчество и не мне решать...
Просто разблочил эти доступы а потом снова настроил сквозь контент акцксс.
И огромное тебе спасибо, Olk!
С темой решение прекрасное.