Как привязать внешнюю ссылку к заголовку статьи 1.10.6

 
Посетитель
no avatar
Сообщений: 12
Подскажите, пожалуйста, как сделать в 1.10.6 так, чтобы при нажатии на название статьи вместо перехода к ее полному тексту происходил бы переход по внешней ссылке. Но не для всех статей (это я понял как сделать - напрямую в базе указать нужный seolink и изменить в файле model.php строку $url = '/'.$seolink.$page_section.'.html'), а только для некоторых. Дело в том, что у меня часть статей (некоторые новости) сделана как презентационные одностраничники, в то же время другие статьи должны отображаться в стандартном виде. Можно конечно ссылку в анонс засунуть, но это как-то не очень - хотелось бы сделать так чтобы одностраничник открывался именно вместо обычной статьи. Я добросовестно искал ответ на форуме, но не нашел, либо (что вероятнее) не понял, как это можно сделать. Буду очень благодарен за помощь.
Посетитель
small user social cms
МедальАвторитет форума
Сообщений: 1581
Для этого вам нужно в админке создать поле подобное
Код PHP:
  1. " URL страницы
  2. Если не указан, генерируется из заголовка
. В базе в таблице контента создать одноимённое поле, куда будет вноситься url которое вы будете указывать при создании материала, а затем в файле шаблона прописать условие когда следует обращаться к $article.url, а когда к $article.my_url
"
Реклама
cms
Посетитель
no avatar
Сообщений: 12
Спасибо. Попробовал, но не получилось - знаний не хватает. Пока сделал переадресацию через шаблон, но работает не круто :(. Буду учиться.
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 2606
Alsgus:
Пока сделал переадресацию через шаблон
Можно прямо в тело статьи ставить скрипт переадресации. Это что бы шаблоны не править под каждую статью)
Посетитель
small user social cms
МедальАвторитет форума
Сообщений: 1581
1.
Код PHP:
  1. ALTER TABLE `cms_content` ADD `my_url` VARCHAR(100) NOT NULL
2./admin/aplets/content.php после
Спойлер
Код PHP:
  1. <br>
  2. <div style="margin-top:15px">
  3. <strong>Внешняя сслка</strong>
  4.  
  5. </div>
  6. <div>
  7. <table border="0" cellpadding="0" cellspacing="0" width="100%">
  8. <tr>
  9. <td><input type="text" name="my_url" value="<?php echo $mod['my_url']; ?>" style="width:100%"/></td>
  10. <td width="40" align="center"></td>
  11. </tr>
  12. </table>
  13. </div>
Далее в двух местах ищеш такую строку
Код PHP:
  1. $article['url'] = cmsCore::request('url', 'str');
и следом пишешь такую
Код PHP:
  1. $article['my_url'] = cmsCore::request('my_url', 'str');
Идёш в шаблон com_content_view.tpl и в блоке который начинается с {if $articles} вставляеш условие.Что то типа
Код PHP:
  1. {if $article.cat_id == 54} <a href="{$article.my_url}" class="con_titlelink">{$article.title}</a>{else} <a href="{$article.url}" class="con_titlelink">{$article.title}</a>{/if}
Где $article.cat_id == 54 категория статей для этих нужд.
Только наверное в запросе нужно получить $article.cat_id,если она не выводиться.
Редактировалось: 4 раз (Последний: 24 декабря 2015 в 22:58)
Посетитель
no avatar
Сообщений: 12
Нил и Лора! Большое вам спасибо. В тело статьи я скрипт вставлял, но он отображался как текст- значит делал что-то не так. Попробую еще раз. А потом к вставке кода перейду:). Хочу научиться делать все (или почти все) на своих сайтах сам. Еще раз спасибо!
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: