[Решено] Пытаюсь скрыть поле ссылка от неавторизированных посетителей

Главные вкладки

Аватар пользователя diel53 diel53 8 апреля 2013 в 15:52

В content template создал шаблон, в нем есть поле ссылка. Ссылка ведет на внешний ресурс. Хочу скрыть от анонимов.
Попробовал код:

<?php
if ($user->uid == 0) {
print "<br><p style='color: red; text-align: center;'>Ссылки для скачивания файлов видны только зарегистрированным пользователям. <br> <a href='user/register'>Зарегистрируйтесь</a> пожалуйста.</p>";
} else {
'<a href="<?php print $node->field_manuals_programm_download['und'][0]['url'] ?>">Скачать программу</a>'}
?>

Не выходит. Пишет "Parse error: syntax error, unexpected T_STRING in"
Пробовал разные варианты синтаксиса, непомогает.
Может этот код и не сработает в D7?
Может есть другое решение?

Если знаете - подскажите пожалуйста!

Комментарии

Аватар пользователя diel53 diel53 8 апреля 2013 в 21:27

"tascom" wrote:
поставить в варианте else print

Чет не выходит, ошибка "Parse error: syntax error, unexpected '{' in"
Что за дрянь.
Модуль ставил, но не разобрался, решил програмно попробовать, но видимо не судьба!

Аватар пользователя sg85 sg85 8 апреля 2013 в 21:39

А еще можно PHP выучить и заодно HTML

if ($user->uid == 0) {
  print '<br /><p style="color: red; text-align: center;">Ссылки для скачивания файлов видны только зарегистрированным пользователям. <br /> <a href="user/register">Зарегистрируйтесь</a> пожалуйста.</p>';
} else {
  print '<a href="'.$node->field_manuals_programm_download['und'][0]['url'].'">Скачать программу</a>';
}

а удобнее сделать так

  print $user->uid?'<a href="'.$node->field_manuals_programm_download['und'][0]['url'].'">Скачать программу</a>':'<br /><p style="color: red; text-align: center;">Ссылки для скачивания файлов видны только зарегистрированным пользователям. <br /> <a href="user/register">Зарегистрируйтесь</a> пожалуйста.</p>';

сейчас небось еще и вылезет нотис про undefined

P.S. а еще есть такая прикольная штука, называется CSS файлы.

Аватар пользователя tascom tascom 8 апреля 2013 в 21:40

попробуйте

<?php if ($user->uid == 0): ?>
<br><p style='color: red; text-align: center;'>Ссылки для скачивания файлов видны только зарегистрированным пользователям. <br>
<a href='user/register'>Зарегистрируйтесь</a> пожалуйста.</p>
<?php else: ?>
<a href="<?php print $node->field_manuals_programm_download['und'][0]['url']; ?>">Скачать программу</a>
 <?php endif; ?>

а лучше с модулем разобраться

Аватар пользователя diel53 diel53 8 апреля 2013 в 22:06

Грандиозное спасибо tascom. Все работает!!!
Приношу свои извинения за необразованность, но надеюсь это кому-нибудь поможет и такие глупые вопросы больше не будут задаваться на форуме!