タグ付けされた質問 「development」

このタグは、Joomlaの機能や拡張機能の開発に関する質問です。



4
初心者開発者向けのJoomla 3.x拡張機能開発チュートリアル
私はJoomla 1.0.15バージョンで広範囲に働き、複数の拡張機能を開発しました。また、Joomla 1.5.xで開発を継続しましたが、このリリース後に開発は中止されました。今、私はJoomla 3.xで再び開発を始めたいです。JoomlaがMVC、レスポンシブテンプレート、ワークフローなどの複数の機能強化を行っていることがわかります。 誰かがこれのための最も簡単なロードマップとチュートリアルリンクを提供できますか? 現在、新しいワークフローは何ですか? 新しいMVCアーキテクチャとは何ですか?

1
コンポーネントにドラッグアンドドロップの順序を追加する
Joomla Hello Worldチュートリアルに基づいて小さなコンポーネントを開発しましたが、今では、他の多くのJoomlaコンポーネントに含まれているのと同じドラッグアンドドロップの並べ替えを実装したいと思います。 最初の列で並べ替えることにより、各テーブル行をドラッグして位置を変更できます。 Joomlaにこの機能を追加するネイティブな方法はありますか、それとも自分でプログラムする必要がありますか? 正しい方向へのナッジは高く評価されます。

2
Webサイトが公開されたら、どのように更新しますか?
サイトでライブを行った後、どのようにして更新をテンプレートとモジュールにライブでプッシュしますか? 1つのサイトで開発し、次にakeebaバックアップを行って最初にサイトをプッシュするときに、いくつかの異なるソリューションを実行する傾向があります。ただし、その後、このプロセスを繰り返すことは、古いサイトを破壊することを意味します。 解決策の1つは、さまざまなファイル、テンプレート、CSS、画像などを単にftpすることですが、これはそれほど速くなく、完了するまで数分間リンクが切れる場合があります。 もう1つは、コードがあるところにgitハブを使用することですが、私たちは小さなチームですので、多くのブランチやリリースに取り組んでいると、プロジェクトがあまりにも多くの作業になります。 基本的に、ステージングサイトに物を置いてからライブにプッシュするためのヒントやソリューションは、ライブサイトがライブサイトとして記事やユーザー登録などを行うため、置き換えることはできません。 ありがとうございました

1
コンポーネントビューでJoomlaのキャッシュを使用するにはどうすればよいですか?
通常CMSの場合と同様に、ほとんどのヒットはまだ「新しい」間に発生します。ページ出力を生成するために必要な重いワークロードを減らすために、ページ出力を特定の期間に初めてレンダリングするときにキャッシュしたいと思います。 私はJCacheのドキュメントから作業してきましたが、基本的な仕組みは次のように解決されました。 $cache = JFactory::getCache('MyCache', ''); $cache->setCaching(true); $cache->setLifeTime(86400); //24 hours $cache_id = 'MyCache_page_123'; $cached_page= $cache->get($cache_id); if (!empty($cached_page)) { $the_page_output = $cached_page; }else{ $the_page_output = ...<div>the generated view HTML</div>.... $cache->store($the_page_output, $cache_id); } // echo or return "$the_page_output" キャッシュをどこに作成するべきか、そしてすべての作業が再開される前にそのキャッシュを使用するための「スイートスポット」を決定することを試みて立ち往生しています。
12 development  mvc  cache 

4
ユーザープロファイル情報を表示する方法は?
自分のWebサイトにログインしているユーザーの詳細のみを表示するカスタムプロファイルページを作成します。表示する必要があります ユーザー名 名前 登録メール また、登録フォームではなく、カスタムフィールドを作成することもできます。ログイン時にのみ、プロファイルページを編集できる必要があります。

3
コンポーネントがインストール/有効化されているかどうかを確認する最良の方法は?
joomla 2.5と3.xの間で、別のコンポーネントがインストールおよび/または有効にされているかどうかを確認する最良の方法は何ですか?そこと呼ばれるヘルパークラスを存在するJComponentHelperが、私は信じているisEnabled成分であるが、いくつかのJoomlaのバージョンにインストールされていない場合にチェック機能が実際にエラーがスローされます。 これは、データベースに直接アクセスするのと同じくらい簡単ですが、他のクラス/ヘルパー/メソッドが使用されているかどうかを確認したかったのです。

1
サードパーティライブラリをJoomlaに追加して、コードで一般的に使用できるようにするにはどうすればよいですか?
私たちは、PhpExcelやHtmlPurifierなどのサードパーティのオープンソース製品を数多く使用しています。以前は、常に個別のフォルダーがあり、それに応じてそれらを呼び出していましたが、Joomla \librariesフォルダーでそれらをインストール/使用する従来の方法があるかどうかを知りたいと思います。 拡張機能での独自のライブラリの使用を調べましたが、これが文字通り独自のライブラリの記述に適用されるのか、それとも「フォルダ内のすべてのもの」で一般的に使用できるのかは明確ではありません。このR&Dを始める前に、いくつかの提案や洞察を期待していますが、それ以外の場合は結果を更新します。

2
コアバックエンドコンポーネントにカスタムボタンを追加する
元のソースコードを変更せずに、標準のJoomla 3コンポーネント(com_contents)のJToolbarにカスタムボタン(もちろん、カスタムアクション付き)を追加することはできますか? 背景:com_contents大規模なメール機能を作成するには、メイン画面(すべての記事のリスト)にボタンを追加する必要があります。もちろん、標準のJoomlaファイルを変更することはできますが、変更した場合、Joomlaを新しいバージョンにアップグレードすると、カスタマイズが失われます。しかし、どういうわけかボタンを追加できれば、更新時に変更を失うことはありません... そして、これが可能なら、どうすればできるのでしょうか?プラグインを作成しますか?このアドオンの作成をガイドするチュートリアルはありますか?

3
カスタムコンポーネントビューへのアクセスを制限する方法
カスタムコンポーネントで、特定のビューを特定のユーザーグループのみに制限できるようにしたいと考えています。ビューの1つにメニュー項目を作成する場合、それは非常に簡単です。そのメニュー項目のアクセスレベルを選択するだけで完了です。 ここで、option = com_mycomponentを使用してURLに直接アクセスしようとした場合、または私のコンポーネントの内部リダイレクトのいずれかがItemidが割り当てられていないページに移動した場合に問題が発生します...その場合、必要なのはコンポーネント自体です。ユーザーグループをチェックして、そのページを表示できるかどうかを判断する...コードでそれを制限するにはどうすればよいですか?ユーザーのユーザーグループの単純なハードコードされたチェック?それとも、「標準的な」方法がありますか? 私はドキュメントをチェックしていて、これを見つけました: http://docs.joomla.org/J2.5:How_to_implement_actions_in_your_code しかし、それはユーザーができることのためであり、ユーザーが見ることができるもののためではありません。私はこのフォーラムのスレッドも見つけました: http://forum.joomla.org/viewtopic.php?t=530721 最初のコードはかなり古いですが、最後にこれを使用することをお勧めします: http://api.joomla.org/cms-3/classes/JUser.html#method_authorise そのためにはどうすればよいですか?JUserでアクセスをテストできるように、ビューで生成されたメインオブジェクトのアセットを定義する必要がありますか? 前もって感謝します。

2
コンポーネントから#__contentに記事を追加するにはどうすればよいですか?
私のコンポーネントは、従来とは異なる方法でフロントエンドから記事を追加する必要があります。MySQLでそれらを挿入できることはわかっていますが、可能であればコア関数を使用したいと思います。 components \ com_contentのコードを研究したので、発生する必要のあるすべてのものに少し圧倒され、私はそれを過度に複雑にしていることを望んでいました。 Joomlaでこれの例はありますか、それを達成するために従うべき手順の規則はありますか?

4
JoomlaでRESTful APIを構築する方法
私はv1からJoomla拡張機能を構築してきましたが、私が構築してしばらく使用してきたAPIをすぐにライブで使用する必要があります。現在、Joomla 2.5を使用しており、このシステム用のプラグインを作成しています。 https://github.com/techjoomla/com_api 稼働する前に、できる限りシステムの将来を証明したいと思います。このAPIコンポーネントは、最近Joomla v3で動作するようにアップグレードされ始めたため、現在サイトのアップグレードを妨げています。また、APIがモバイルアプリで使用されるため、統合された拡張機能であることによるメリットがないため、パブリックAPIとユーザーポータルを分離することには意味があると思います。 現在の計画では、ユーザーポータルをアップグレードできるサブドメインでAPIを再構築します。エキサイティングに見える新しいJoomlaフレームワークについて読んでいます。これは、モバイルアプリ用のRESTful APIを構築するのに適していますか?もしそうなら、彼らは始めるためのヒントですか?私は、FoFを使用してAPIを構築できることを読みましたが、これは良い選択でしょうか?Kickstarterプロジェクトがまさにこの種のAPIを構築しようとしているのを見ましたが、それは潜在的なオプションですか?APIのみを実行するように、サブドメインの現在の2.5サイトを削除する必要がありますか? モバイルインタラクション用のJoomlaベースのRESTful APIを構築するための最良のアプローチに関する提案は、高く評価されます。

3
Joomla開発のロードマップはありますか?
私はコードのほとんど(すべて?)がボランティアによって書かれていることを認識しているため、「これ」は実行する必要がある順序であり、「これ」は次に行う必要があるものであると誰もが言うのは困難です。 それが受け入れられたので、コアコントリビューターが議論し、Joomlaの開発と目標の計画として一般に受け入れられているロードマップがあると思います。これを読む場所はありますか?提案はできますか?計画にないコードを寄稿した場合、受け入れられる可能性はありますか?

1
PHPからフォームのXMLを動的に生成するにはどうすればよいですか?
ユーザーのアイテムリストに基づいてページ/フォームを生成する必要があります。そのままの形で、ユーザーはアイテムの説明を含むアイテムのリストを指定でき、textそれがlistフィールドタイプかフィールドタイプかを指定できます。(チェックアウトできる機器のリストを想像してください。チェックする項目のリストは機器のタイプによって異なります。確かにいくつかの共有アイテムがありますが、それらは機器のタイプ、モデルなどによって異なります)。そのため、単に既存のXMLファイルをmodels\forms\フォルダーからロードして実行する代わりに、新しいフィールドセットと一連の新しいフィールドをその場で追加できます。 もしそうなら、 それはどのように達成されますか? MVCが「標準」形式のXMLであるかのようにMVCがそれを処理できるようにするための正しい場所はどこでしょうか。 ビューに表示するためにこれらのフィールドのリストを取得するのに最適な方法は? models \ myform.php $form = $this->loadForm('com_mycomponent.myform', 'myform', array('control' => 'jform', 'load_data' => $loadData)); controllers / myform.php // Get the user data. $data = JFactory::getApplication()->input->get('jform', array(), 'array'); // Validate the posted data. $form = $model->getForm(); if (!$form) { JError::raiseError(500, $model->getError()); return false; } ... // Validate ...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.