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

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

1
既存のコンポーネントへのタグ機能の追加
拡張機能の内部でタグが機能することを期待しています。これを見て、フィールドを編集ビューに表示させましたが、もちろんどこにも保存されません。 com_content記事タグの処理を見ると、関係が完了する前に、徹底的なマッピング交換が行われます。したがって、内でタグとコンテンツの関係が構築されることがわかり#__contentitem_tag_mapます。特にタグ用のコンポーネントでこのような新しいテーブルを作成する必要がありますか、それともcom_contantがそれを処理する方法であり、他のフィールドタイプのようにタグを列だけに保存​​できますか? 拡張機能でこれを行う必要がありますか、それともプロセスを大幅に簡素化するために使用していないものはありますか? おそらく「エクステンション101へのタグの簡潔な追加」が役立つかもしれません。 このコンテキストでタグについて言及しているドキュメントでは特に何も見ていませんが、関連がある場合は、FOF / RADを使用してこの拡張機能を開発しました。

4
Joomlaモジュールを開発する方法?
私はこれについてのチュートリアルを遠くから探しましたが、満足のいくものを見つけることができないようです。joomlaの新しいモジュールをどのように作成しますか? 現在、コード全体でカスタムHTMLモジュールを使用しています。PHPにアクセスしてすべてをモジュールにしたいのですが、そのためのチュートリアルが見つかりません。インストール済みのモジュールを以前に変更しましたが、インストールするモジュールを作成する方法がわかりません。 joomlaのドキュメントは非常にわかりにくく、何度か読んだ後、あきらめました。誰かがこのプロセスを私に説明するのを手伝ってくれる?ありがとう!

2
JHtml:script()と$ doc-> addScriptの違いは何ですか?
最近、特定のJSおよびCSSファイルを<head>各ページのに挿入する必要があるモジュールを開発しました。最初は、私は使用しました: $doc =& JFactory::getDocument(); $doc->addScript(JURI::base(true).'/modules/mod_x/js/mod_x.js'); ただし、キャッシュを有効にすると、サイトがからキャッシュされたバージョン/cacheとキャッシュされていないバージョンの両方をロードし/modules/mod_x/js/、JSエラーが発生することに気付きました。 これを次のように変更した場合: JHtml::script(Juri::base().'modules/mod_x/js/mod_x.js'); スクリプトは、これらのエラーを解決するために、キャッシュから1回だけロードされました。 私はドキュメントでaddScriptメソッドがメソッドよりも「低レベル」であったことを読みましたJHtml:scriptが、それを言うだけではありません... もちろん、上記の[JHtml:scriptメソッド]を使用して自動的に実行されるいくつかの手順(JHtml:scriptが実行する)も手動でコーディングする必要があります([addScriptを使用する場合])。 ...これ以上の詳細はありません。 違いは何ですか?JHtml:script最終的にはaddScriptある時点でドキュメントオブジェクトが呼び出されると思いますが、最初に他の中間手順が行われますか?

2
xml形式で指定されたクラスまたは読み取り専用属性をオーバーライドするにはどうすればよいですか?
初めてレコードを追加するときにのみ入力を許可する特定のフィールドがあるので、クラスを追加したりreadonly、フォームが読み込まれた後のある時点で指定したりできるかどうか疑問に思っていますが、(もちろん) 、ユーザーにレンダリングされる前。 からフォームをロードすると、models\forms\myform.xmlクラスや読み取り専用などの属性が期待どおりにロードされます。以下は、フィールドが現在レンダリングされている方法で、libraries \ joomla \ form \ form.phpを使用しています。 echo $this->form->getInput('myReadOnlyCode')

4
新しい拡張機能でv2.3またはv3を使用する必要があるBootstrapバージョン
拡張機能開発者として、私は今度の拡張機能でどのBootstrapバージョンを使用するか混乱しています。 多くの議論の中で、私はJoomla 3.xがbootstrap-3.0を利用しないことを発見しました。 ほとんどのテンプレートプロバイダーはブートストラップv3を使用しています ブートストラップv3も使用する多くの拡張機能 何を選ぶ?

2
Joomlaで動作するようにPhpStormを設定するためのチュートリアル
Joomla拡張機能(およびコア)を開発してデバッグできるようにPhpStormをセットアップする方法を説明する優れたリソースまたはチュートリアルはありますか? JoomlaのEclipseの設定に似たものを探しています!開発チュートリアル。 多くの人がそれに満足しているようですが、私はそれを機能させるために苦労して諦めました。

1
フロントエンドのゴミ箱Joomla記事
私は、Joomlasフロントエンドにいるときに「ゴミ箱の記事」ボタンを追加するJoomla 3.x用の小さなプラグインを開発しています。下のスクリーンショットを参照してください。 http://imgur.com/NYLGRdY これで、リスト項目をクリックしたときに発生するこのAJAX呼び出しがあります。 これがコードです: request = { "option" : "com_ajax", "plugin" : "deletearticle" "data" : "test", "format" : "raw" }; $.ajax({ type : "POST", data : request, success: function (response) { $("p:first").html("Data: " + response) } }); そしてヘルパーPHPファイル。 <?php jimport('joomla.plugin.plugin'); class plgAjaxDeletearticle extends JPlugin { function onAjaxDeletearticle() { $controller …

1
フィルターとページネーションを使用してビューを作成する方法
Joomla 3.xのフィルターとページネーションを使用してビューを作成したいのですが、何をどこに含める必要があるのか​​わかりません。 とりあえず、モデルを拡張JModelListし、getListQuery()メソッドを使用してデータをフェッチし始めました。 <?php defined('_JEXEC') or die; class smartModelProducts extends JModelList{ protected function getListQuery(){ // Initialize variables. $db = JFactory::getDbo(); $query = $db->getQuery(true); // Create the base select statement. $query->select('*') ->from($db->quoteName('#__smart_products')); return $query; } } 私のview.html.phpはこのようになります: <?php defined('_JEXEC') or die; class smartViewProducts extends JViewLegacy{ function display($tpl=null){ $app=JFactory::getApplication(); $jinput = $app->input; …

2
テンプレートではなくコンポーネント内にシステムメッセージを表示する
デフォルトでは、Joomla 3システムメッセージ(メッセージ、通知、警告)は、テンプレートの特定の位置に表示されます。 <jdoc:include type="message" /> これらのメッセージをより詳細に制御して、自分のコンポーネントのコンテナー内の異なる位置に表示することは可能でしょうか? 上記のjdocをコンポーネントのビュー(格安ショット)内で使用しようとしましたが、うまくいきませんでした。Joomlaの標準システムメッセージングシステムを使用してコンポーネントによって生成されたメッセージを「キャプチャ」し、どこにでも表示できる方法はありますか? 前もって感謝します。

1
Gitを使用したサイトの管理
Joomlaサイトのビルドを管理するためにGitを使い始めており、いくつかのベストプラクティスのガイダンスを探しています。現状のまま: WHMを使用して新しいアカウントをプロビジョニングします。インストール後のフックを記述して、GoomhubからJoomlaを自動的にダウンロードし、適切なpublic_htmlディレクトリに配置し、データベースとDBユーザーを作成します。 Webインターフェースを介してJoomlaを手動でインストールします(現在、これも自動化する方法を探しています) 上記のベアリポジトリをセットアップします。public_htmlこれは、ユーザーがプッシュおよびプルする場所です。これを呼びますorigin 標準のリポジトリをセットアップする public_html Joomla固有の .gitignore ベアリポジトリをリモートとして指定します(git remote add origin ../repo.git) git add .次にgit commit -m"Initial J! Commit"、を実行し、git push origin masterベアリポジトリにデフォルトのインストールを取得します。 post-receive変更をリポジトリに自動的にプルするフックをベアリポジトリに追加しますpublic_html(ベアリポジトリは開発者がローカルの変更をプッシュする場所であるため) 誰かがサーバーで変更を行った場合にpost-update備えて、リポジトリにフックを追加public_htmlします... 現時点では、データベースについてあまり心配していません。私の主な問題は、Joomlaファイルの追加/変更を処理することです。明らかに、テンプレートと拡張機能をインストールすると、特定のファイルが追加および削除されます。同様に、Joomlaの更新は変更を引き起こします。 これらのサーバー上の変更に対処する最良の方法は何ですか?onAfterRenderPHPGitを使用して実行するgit add .、または同様の小さなプラグインを作成することを考えていましたgit commit git push origin master。次に、私のローカルコピーで、pullを実行すると、すべてが実行されます。それとももっと良い方法がありますか?

2
CSS / JSファイルをカスタム拡張に含める最良の方法
CSSまたはJSファイルをカスタム拡張機能に含める必要がある場合、これを達成するための最良かつ最も安全な方法は何ですか。 拡張zipファイルに特定のフォルダーを配置する必要がありますか? XMLマニフェストでファイルを宣言するにはどうすればよいですか? Joomlaヘッダーにファイルを含める方法(必要な場合のみ)

6
ダウンロード可能なPDF請求書を保存するのに最適な場所はどこですか?
私のコンポーネントは、顧客がダウンロードできるPDF形式の請求書を作成します。 これらのファイルを保存するのに最適な場所はどこですか? /adminitrator/componentes/com_mycomponent/invoices /componentes/com_mycomponent/invoices /media/com_mycomponent/invoices 権限のないユーザーがこれらのファイルを直接ダウンロードするのを防ぐにはどうすればよいですか? 顧客が他の人の請求書をダウンロードできないようにするにはどうすればよいですか?

1
正確に何が「内部」テンプレートのjinclude type = head呼び出しに読み込まれますか?
テンプレートを作成するときは、これらの呼び出しの1つ(および1つだけ)を内に配置する必要があります<head></head>。 <jdoc:include type="head" /> ここを確認しても、追加情報はそれほど多くありません。 https://docs.joomla.org/Jdoc_statements#Head だから私の質問は:この呼び出しで正確に何が読み込まれるのですか?私はこれが使用時に追加のJavaScriptとCSSファイルをロードすることを知っています: $document = JFactory::getDocument(); $document->addStyleSheet($url); $document->addScript($url); またはカスタムタグを使用して $document = JFactory::getDocument(); $document->addCustomTag($stylelink); 他に何か?そしてそこに何がロードされているかを注文する方法はありますか? ありがとう。

2
プラグイン内からエラーを適切に発生させるにはどうすればよいですか?
特定の条件下で一部のコンテンツが保存されないようにしましたが、ユーザーへのエラーメッセージの処理に問題があります。 実際のテキストは表示されますが、「followigエラーで保存に失敗しました」という追加の言及があり、その後は何も続きません。テキストが表示されるので冗長なようですが、それを抑制する方法がわからないか、ユーザーに不完全に表示されないように正しい情報を提供します。 public function onContentBeforeSave($context=null, $article=null, $isNew=0) { if($myTestFails){ $errormsg = 'My error message while saving categories...'; JError::raiseWarning(403, $errormsg); return false; } } エラー カテゴリの保存中のエラーメッセージ... 保存は次のエラーで失敗しました:

2
カスタムコンポーネントでコンテンツの「ロック」はどのように処理されますか?
デフォルトのコアのcom_contentには、特定の記事がユーザーによって編集されているときに「ロック」される組み込みシステムがあり、他のユーザーが同時にそれを編集することはできません。ユーザーがウィンドウを閉じるか、記事を適切に閉じずにセッションを期限切れにした場合(「保存」または「キャンセル」をクリックするなど)、そのコンテンツは「チェック」され、その横のバックエンドにロックアイコンが表示されます。スーパー管理者がロックを解除する必要があります。 私の質問は、独自のコンテンツテーブルを持つカスタムコンポーネントにどのように追加されるのですか?私が見つけた限りでは、JTableを使用してそのコンテンツを操作している限り、それはそのクラスのメソッドの組み込み機能として提供されているように見えます...そうですか?または、JTableContentなどの他のものを使用する必要がありますか?コンテンツ(特定の列)を格納するために使用されるテーブルに何かを追加する必要がありますか?

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