6

「作成者」グループには公開権限がありません。これで結構です。したがって、編集者/管理者は、記事の最初の承認を行います。

著者がすでに公開されている記事を編集することを決定した場合、問題が発生します。彼がフロントエンドから「保存」を押すと、アイテムはすぐに非公開になります (著者グループにはアイテムを公開する権利がないため)。したがって、これは少なくとも私の場合は大きな問題です。

管理者の最初の承認後、著者が調整を行っても記事を公開したままにしたい。このようなことをする方法はありますか?

このロジックは、Joomla Core でのデフォルトの方法として提供されます。

4

4 に答える 4

2

K2 から EasyBlog のようなものに切り替えることを検討することもできます... または、K2 を使用しないでください。K2 のデフォルトは、あなたのワークフローと競合するワークフローに従うようです。

それ以外の場合は、ニーズに合わせて K2 を変更できます... 拡張機能を変更することはお勧めしません。更新するたびに変更を加える予定がない限り、拡張機能を更新できなくなるためです (これは面倒です)。

問題は administrator/components/com_k2/models/item.php にあります。次の行は、バージョン 2.6.1 行 785 のフォームです。

        if ($front)
        {
            if (!K2HelperPermissions::canPublishItem($row->catid) && $row->published)
            {
                $row->published = 0;
                $mainframe->enqueueMessage(JText::_('K2_YOU_DONT_HAVE_THE_PERMISSION_TO_PUBLISH_ITEMS'), 'notice');
            }
        }

私があなたを正しく理解しているなら、あなたはもっと次のようなものが欲しいです:

    if ($front)
    {
        $row->published = 1;
        if (!K2HelperPermissions::canPublishItem($row->catid) && $row->published && $isNew)
        {
            $row->published = 0;
            $mainframe->enqueueMessage(JText::_('K2_YOU_DONT_HAVE_THE_PERMISSION_TO_PUBLISH_ITEMS'), 'notice');
        }
    }

if ステートメントに $isNew のチェックを追加してモデルを正しく理解した場合、新しいエントリには published = 0 のみが適用されます。私があなたを理解しているなら、あなたが影響を与えたいのはどれだけですか。このようにして、記事が既に存在し、公開されている場合、管理者が非公開に変更しない限り、常に公開されたままになります。

これが期待どおりに機能するかどうかはわかりませんので、お知らせください。

于 2012-11-21T20:51:05.717 に答える
1

作成者にアイテムの編集を許可するか、作成者の記事を編集するオプションを無効にする必要があります。

于 2012-11-17T21:04:23.747 に答える
1

joomla管理に移動し、k2メニューに移動し、User Groupsタブでeditorsというグループを作成してアクセス権を付与してからPublish item、タブに戻り、Users編集者にしたいユーザーを編集者グループに入れます。

Front-end item editing編集者グループのユーザーがおよびにアクセスできることを確認してくださいEdit any item

あなたの問題は、編集者がEdit any itemアクセスできるが、にアクセスできないためPublish itemです。

于 2012-11-24T14:26:39.807 に答える