KodiCMSはKohanaフレームワークからLaravel 5に移行します









Habréで記事を書いているとき、私は多くの人が亡くなったKohanaフレームワークを好まないことに気付き、この理由からプロジェクトについて多くの批判を聞いて、質問について考えました "、このフレームワークは一年を通してCMSの開発を完全には助長しないためです。



最初の考えは、コハナの独力での継続的な開発についてでした。 最初に、Composerがシステムに統合され、モジュールとプラグインがhttps://packagist.org/packages/kodicms/リポジトリのパッケージに移行され、パッケージタイプhttps://github.com/composer/installersが composerインストーラーに追加されました。 その後、しばらく時間をかけて検索したところ、Kohana54プロジェクト( https://github.com/kohana54/core )に出会いました。その開発者は、すべてのクラスをPSR-4標準に準拠させることを決めましたが、明らかに良い時間までそれを残しました。 最初はあまり気にしませんでしたが、終わらせようとしましたが、数日後、カーネル自体に加えて、残りの標準フレームワークモジュールとすべてのCMSモジュールを書き直す必要があることに気付きました。フレームワークとKohanaと最終的に結びつけることにしました。



「どのフレームワークを選択すべきですか?」という疑問が生じました。





フレームワークの比較は記事全体に影響を与える可能性があるため、私は自分の選択であるLaravelフレームワークにのみ自分自身を制限します。





多くの人にとって、4月1日は笑いの日であり、私にとっては、新しいプロジェクト-laravelフレームワークのKodiCMSの誕生日です。 この日、新しいリポジトリhttps://github.com/KodiCMS/kodicms-laravelが作成され、最初のコミットが追加されました。



新しいCMSの構造について少し説明します。 多くの人は、Laravelにはすぐに使用できるモジュール構造がなく、パッケージはモジュールと同じではないことを知っているため、最初に記述されたのはModuleLoaderでした



その結果、モジュールの構造は次の形式になります





モジュール性の詳細については、 こちらをご覧ください。



モジュールとの類推により、サードパーティのプラグインを接続することが計画されていますが、それらはリポジトリからダウンロードできる機能を備えた管理インターフェースを介してアクティブ化されます。



彼らが言うように、目は恐れており、手はしている。 モジュール構造の実装後、システムの標準モジュールを転送するプロセスと主な機能の実装が始まりました。 現時点では、私の推定によると、機能の60%を超えるものが転送されています。





当初は少なくとも6か月ですべての機能を移行する予定でしたが、何かがうまくいかず 、プロセスが速くなりました... VKグループの開発者http://vk.com/laravel_rusLaravelRUSチャンネルは、 システムに興味を持ち始め、その後、愛好家が提供し始めました最もクールなフレームワークの1つで最もクールなオープンソースCMSのプロジェクトの開発を支援します。



なぜ別のCMSが必要なのですか?!



異なるCMSを使用するとき、それらの多くが同じ機能を提供するが、わずかな違いがあるという事実にしばしば遭遇しました。 つまり 実際、多くのCMSは、URL構造であろうとサイトのページ上のコンテンツの配置であろうと、ユーザーを特定のフレームワークに誘導します。 それらの多くには自己拡張型のカーネルがあり、拡張が困難であるか、開発を開始するためにドキュメントを学習するのに時間がかかります。



CMSを作成するとき、私はそれらからすべてのベストを収集し、1つに結合したかったのです。 まず、人気のあるフレームワークのいずれかを使用し、カーネルに最小限の変更を加えて、開発者が最短時間で開発プロセスに参加できるようにすることにしました。 さらに、他の人のようなCMSは必要ありません。私の名前だけで、私の目標は、管理パネルから必要なタイプのフィールドを追加して、独自のセクション(ブログ、ニュースなど)を設計できるようなコンストラクタを作成することですシステムコードにハードコーディングされていませんが、サードパーティの開発者がプラグインを使用して追加しています。 同じことが、サイトのページへのコンテンツの出力にも当てはまります。 そのため、サイトテンプレートのプログラミングと選択に特別な知識を持たない各ユーザーは、ドキュメントのリスト、サイトメニュー、または通常のHTMLのいずれでも、必要なデータを表示できます。コンテンツマネージャーがAPIを介してシステムに統合し、管理者で完全に使用できるように、お気に入りのテキストエディターを使用できるようにしますパネル。



海システムとそのすべてのアイデアは実現可能であり、それらのほとんどはすでに実装されています。 それらのいくつかは、さらなる開発を必要とするかもしれません。 しかし、すべては通常どおり開発者にかかっています。 そのため、特にLaravelフレームワークでの作業経験を増やし、将来の経験を活用するのに役立つので、開発に参加するように全員を招待します。



いつものように、あなたはいつでも仕事の結果を見ることができます:



ウェブサイト: http : //laravel.kodicms.ru/backend



または または、 https://github.com/KodiCMS/kodicms-laravelをダウンロードしてローカルにインストールします



謝辞



KodiCMSのおかげで、私は良いサービスの世界と私の助けを提供する準備ができている人々を発見しました。



Ps近い将来、プロジェクトについて議論する最初のオンライン会議が開催されます。これにより、システム、その歴史、およびhttps://vk.com/kodicms?w=wall-48395169_287%2Fallの現在の状態について詳細に説明されます。



更新しました。 現時点では、システムはまだAlphaバージョンのステータスを保持しており、エラーが発生したり、その後除去される欠点があったりする場合があります。 バグレポートは大歓迎です。



All Articles