インストール - joomla php install



JoomlaでJParameterを使用する (2)

あなたは、見ていると三角形になるコンテンツプラグインでそれを行うことができます。

public function onContentPrepare(...) {
   ...store hit date into table...
}

その方法についての良いことは、コアハッキングを必要としないことです。

私は、Joomla 1.7.1サイトで特定のページの最終訪問日を格納するために、JParamsを使用することを考えています。 だからコードで私は次のようなことをやっている:

$last_run       = $params->get('last_visit', '2000-01-01');
// set last_run to current run time
$params->set('last_visit', $now);

問題は明らかに、last_visitのために新たに設定された値は格納されませんが、設定されます。

DBクエリを実行することなく、パラメータを保存する方法はありますか? ありがとう


Answer #1

ここにあなたの問題の解決策の例がありますが、これはJoomla 1.5

// Get instance of the table object of your component
$table =& JTable::getInstance( 'mytable');
// Set the item, this could be Article ID for example
$table->load($id);
// Load the parameters through JParameter
$params   = new JParameter($table->params);
$params->set($key,$value);
$table->params = $params->toString();
// Save to database
$table->store();

コンポーネントのコアを変更したくない場合は、プラグインで行うことができます。構築しているコンポーネントの場合は、コンポーネントのモデルでこれを設定し、すべての保存時にコントローラから呼び出すことができます。