Кнопка "Добавить пост" при просмотре блога
Добрый день ув. Сообщество!
Сегодня я бы хотел рассказать о небольшой «фиче», которую можно легко добавить к себе на сайт под управлением LS. Фича заключачается в следующем — при просмотре блога появится ссылка, при нажатии на которую, пользователь будет публиковать сразу в этот блог (присоединен он к блогу или нет).
Фича подходит для сайтов с большим кол-вом блогов, чтобы пользователи не мучались, листая выпадающий список с большим кол-вом блогов, да и вообще, по-моему, такая структура более понятна обычным пользователям.
Итак, что же делаем:
1) Ставим плагин "Blog Autoconnect" — теперь нам доступны все блоги для публикации (кроме закрытых блогов, конечно).
2) Ставим плагин "Отключение персональных блогов" — по сути, они уже не нужны будут, как мне кажется, но это опционально.
3) Открываем файл /templates/skin/ВАШ_ШАБЛОН/actions/ActionBlog/blog.tpl и добавляем в удобное нам место следующее:
{if $oUserCurrent} {if ($oBlog->getType()!='close' and $oUserCurrent->getRating()>=$oBlog->getLimitRatingTopic() and $oBlog->getUserIsJoin()) or ($oUserCurrent->getId()==$oBlog->getOwnerId() or $oUserCurrent->isAdministrator() or $oBlog->getUserIsAdministrator())} <a href="{router page='topic'}add/?blog_id={$oBlog->getId()}" class="edit delite_blog">Добавить своё</a> {elseif $oUserCurrent->getRating()>=$oBlog->getLimitRatingTopic() and ($oUserCurrent->getId()==$oBlog->getOwnerId() or $oBlog->getUserIsJoin() or $oUserCurrent->isAdministrator() or $oBlog->getUserIsAdministrator())} <a href="{router page='topic'}add/?blog_id={$oBlog->getId()}" class="edit delite_blog">Добавить своё</a> {else} <b>Внимание, </b>вы пока не можете публиковаться в данном блоге. Возможные причины: это закрытый блог или у вас недостаточно кармы (требуется как минимум <b>{$oBlog->getLimitRatingTopic()}</b>), либо вы просто не присоединились к нему. <b>Попробуйте присоединится</b> к блогу и перезагрузить страницу. {/if} {else} <a href="{router page='login'}">Добавить своё</a> {/if}и сохраняем файл в UTF-8 без BOM.
Проверка идет на все варианты возможности писать в определенный блог или нет (авторизация, рейтинг, закрытый блог, администрация и создатель блога могут добавлять не смотря на рейтинг, администрация сайта может добавлять во все блоги). Так же спасибо Chiliec за условие с рейтингом и что убрал лишнюю проверку.
С ув. Frankenstein
Источник
31 комментарий
Файл сохранить в кодировке UTF-8 без BOM. Все заработает, при условии, что данный шаблон не подменяется другим из плагина какого-нибудь.
Вот список плагинов.
aceAdminPanel: v.1.5.271 — Ok
aceMySearch: v.1.5.121
User's Adsense: v.0.1.0
Blogs Autoconnect Plugin: v.1.0.0
Chat light: v.0.2.1
Отключение персональных блогов: v.1.0.0
Extended city: v.2.0.0
Language changer: v.1.1.1
LsPage: v.1.3
Minecraft Status: v.1.0.0
No IE: v.1.0.0
Static page: v.1.3.2
Фотолинк: v.1.0
Публикация от имени: v.0.1
Remember me: v.1.2
Role: v.0.4
Search Auto Completer for LS 0.5+: v.1.1.4
SEO: v.0.1
ShowVotes: v.0.2
Spoiler Plugin: v.1.0.3
Template Social: v.2.0
Topic signature: v.1.0.1
Twitter Feed: v.1.1.3
usersearch: v.1.0
Use Watermark: v.0.2.0
Livestreet Wall: v.0.1
Кроме того, это по-моему уже ваш третий комментарий про айпад 2, который я видел. Я не случайно выделил цифру 2. Этим вы подчеркиваете, что хотите обратить внимание, похвастаться. Но хвастаться здесь нечем — вы ведь купили его не на свои деньги, а выпросили у мамы, так ведь? Да ладно, что это я вас здесь учу… когда-нибудь сами всё поймете…
Чем принципиально в отображении контента различаются айпад 1,2 и 3?
Я бы вот как-то так сделал (здесь присутствует проверка по рейтингу):
И после него вставляешь такой код:
Правда немного кривовато получилось, для админа кнопки выглядят так
Для юзеров выглядит так
Кто разбирается подскажите пожалуйста как выровнять расстояние между кнопками.
Простите, это субъективно.
так, при нажатии на кнопку «Добавить своё», гость будет отправлен на страницу логина.
спасибо!
Через какую переменную? Хочу сделать блок в профиле со всеми созданными блогами пользователя
{foreach from=$aBlogAdministrators item=oBlogUser name=blog_user}
{assign var=«oBlog» value=$oBlogUser->getBlog()}
{$oBlog->getTitle()|escape:'html'}
{/foreach}
{/if}
В результате — Внимание, вы пока не можете публиковаться в данном блоге. Возможные причины: это закрытый блог или у вас недостаточно кармы (требуется как минимум 0.000), либо вы просто не присоединились к нему. Попробуйте присоединится к блогу и перезагрузить страницу.
Если присоединиться к Блогу — всё ок.
Версия LS — последняя стабильная.
Шаблон — Сунь и ОО!
Код заменить на: