Очень мне не нравится админка редактора — можно добавлять только в одну категорию, есть ошибки при добавлении статей(. Вообщем неудобно.
Поэтому решил сделать добавление статей напрямую из любой категории статей.
Должно получится так — в нужной категории статей нажимаем ссылку "Добавить статью", появляется Добавление статьи, где в списке категорий статьи — только одна нужная нам категория (чтоб юзер не промахнулся)
Делаем следующее:
Ответственных за добавление пользователей загоняем в группу например Модераторы, далее для группы Модераторы включаем опции "Добавление статей" и "Добавление статей без модерации".
Далее, в тех категориях, куда нужно добавлять в дальнейшем статьи, включаем "ПРИНИМАТЬ СТАТЬИ ОТ ПОЛЬЗОВАТЕЛЕЙ" — ДА
группу редакторов можно убрать(поставить "Только администраторы") — чтобы не вылезала кривая админка редактора.
Еще, чтобы простые пользователи не добавляли статьи куда не надо — выключаем группе Пользователи добавление статей.
если сильно захотите — выложу картинки, я думаю и так все понятно)
далее в файлах:
папка components/content
router.php
добавляем
должно быть вот так:
frontend.php
добавляем
должно быть вот так:
далее в этом же файле ищем
должно быть вот так:
и еще пониже в этом же файле находим:
должно быть вот так:
и последнее в файле
com_content_view.tpl
в нужном месте (в начале) добавляем ссылку на добавление
пробуем радуемся)
АНОНС следующей записи: статьи в клубах, проблема в блогах клубов с табличными данными. Нужно ли это нам? (мне вот нужно😊)
Поэтому решил сделать добавление статей напрямую из любой категории статей.
Должно получится так — в нужной категории статей нажимаем ссылку "Добавить статью", появляется Добавление статьи, где в списке категорий статьи — только одна нужная нам категория (чтоб юзер не промахнулся)
Делаем следующее:
Ответственных за добавление пользователей загоняем в группу например Модераторы, далее для группы Модераторы включаем опции "Добавление статей" и "Добавление статей без модерации".
Далее, в тех категориях, куда нужно добавлять в дальнейшем статьи, включаем "ПРИНИМАТЬ СТАТЬИ ОТ ПОЛЬЗОВАТЕЛЕЙ" — ДА
группу редакторов можно убрать(поставить "Только администраторы") — чтобы не вылезала кривая админка редактора.
Еще, чтобы простые пользователи не добавляли статьи куда не надо — выключаем группе Пользователи добавление статей.
если сильно захотите — выложу картинки, я думаю и так все понятно)
далее в файлах:
папка components/content
router.php
добавляем
'_uri' => '/^content\/add([0-9]+).html$/i', 'do' => 'addarticle', 1 => 'id' );
'_uri' => '/^content\/add.html$/i', 'do' => 'addarticle' ); '_uri' => '/^content\/add([0-9]+).html$/i', 'do' => 'addarticle', 1 => 'id' ); '_uri' => '/^content\/edit([0-9]+).html$/i', 'do' => 'editarticle', 1 => 'id' );
добавляем
$is_add = $inCore->isUserCan('content/add') && $cat['is_public']==1; //если нужно включить по конкретным группам - уберите комментарии и предыдущую точку с запятой // && $cat['modgrp_id'] == $inUser->group_id; // добавить к пред.строке }
if ($do=='view'){ ..... ......... //PAGE HEADING if($cat['id']>0){ $inPage->setTitle($cat['title']); $pagetitle = $cat['title']; $showdate = $cat['showdate']; $showcomm = $cat['showcomm']; $inPage->addHead('<link rel="alternate" type="application/rss+xml" title="'.htmlspecialchars($cat['title']).'" href="'.HOST.'/rss/content/'.$cat['id'].'/feed.rss">'); $is_add = $inCore->isUserCan('content/add') && $cat['is_public']==1; //если нужно включить по конкретным группам - уберите комментарии и предыдущую точку с запятой // && $cat['modgrp_id'] == $inUser->group_id; // добавить к пред.строке }
$template = ($cat['tpl'] ? $cat['tpl'] : 'com_content_view.tpl'); $smarty = $inCore->initSmarty('components', $template); $smarty->assign('id', $cat['id']); $smarty->assign('cat', $cat); $smarty->assign('is_homepage', (bool)($inCore->menuId()==1)); $smarty->assign('showdate', $showdate);
$template = ($cat['tpl'] ? $cat['tpl'] : 'com_content_view.tpl'); $smarty = $inCore->initSmarty('components', $template); $smarty->assign('id', $cat['id']); $smarty->assign('cat', $cat); $smarty->assign('is_add', $is_add); $smarty->assign('is_homepage', (bool)($inCore->menuId()==1)); $smarty->assign('showdate', $showdate);
if ($do=='addarticle'){ $inPage->setTitle($_LANG['ADD_ARTICLE']); $inPage->addPathway($inUser->nickname, cmsUser::getProfileURL($inUser->login)); $inPage->addPathway($_LANG['MY_ARTICLES'], '/content/my.html'); $inPage->addPathway($_LANG['ADD_ARTICLE']); $pagetitle = $_LANG['ADD_ARTICLE']; $pubcats = $model->getPublicCats(); // поддержка биллинга $dynamic_cost = false; if (IS_BILLING){
if ($do=='addarticle'){ $inPage->setTitle($_LANG['ADD_ARTICLE']); $inPage->addPathway($inUser->nickname, cmsUser::getProfileURL($inUser->login)); $inPage->addPathway($_LANG['MY_ARTICLES'], '/content/my.html'); $inPage->addPathway($_LANG['ADD_ARTICLE']); $pagetitle = $_LANG['ADD_ARTICLE']; $pubcats = $model->getPublicCats(); if ($id && ($do!=$edit_article)) { foreach($pubcats as $p=>$pubcat){ if ($pubcat['id']==$id){ $newpcat[]=$pubcat; } } $pubcats=$newpcat; } // поддержка биллинга $dynamic_cost = false; if (IS_BILLING){
com_content_view.tpl
в нужном месте (в начале) добавляем ссылку на добавление
{if $is_add} <p><a href="/content/add{$cat.id}.html">{$LANG.ADD_ARTICLE}?</a></p> {/if}
АНОНС следующей записи: статьи в клубах, проблема в блогах клубов с табличными данными. Нужно ли это нам? (мне вот нужно😊)
Реклама #
Darik 12 лет назад #
lezginka.ru 12 лет назад #
удобно для порталов
Джехутимери 12 лет назад #
Очень полезная штуковина!
Алфей 12 лет назад #
Роман 12 лет назад #
Беру на заметку. В хозяйстве сгодится
Александр 12 лет назад #
Крот 12 лет назад #
есть такая проблема, пока руки еще не дошли
Ingvarruss 12 лет назад #
santi 12 лет назад #
думаю данную разработку надо внести в Базовую версию инстанта.
Александр 12 лет назад #
spacer 12 лет назад #
А можно здесь реализовать добавление статей сразу в несколько категорий? Пусть юзер выбирает одну, а модератор уже добавляет и другие категории, если статья и туда подходит.
eoleg 12 лет назад #
То что надо!
Удалил компонент идеи и сделал на основе статей!
eoleg 12 лет назад #
{if $is_add}
<p><a href="/content/add{$cat.id}.html">{$LANG.ADD_ARTICLE}?</a></p>
{/if}
подскажите где это в com_content_view.tpl
Крот 12 лет назад #
eoleg 12 лет назад #
Крот 12 лет назад #
посмотрю что нужно сделать, у самого так )
eoleg 12 лет назад #
Крот 12 лет назад #
вкратце - надо поменять:
убрать
$is_add = $inCore->isUserCan('content/add') - то что было в старом посте, если вы не обновляли еще - искать НЕ НУЖНО
добавить
Крот 12 лет назад #
... если вы не обновляли еще - искать НЕ НУЖНО
почему то не влезло((
eoleg 12 лет назад #
Крот 12 лет назад #
AndroS 11 лет назад #
nedoriko 11 лет назад #