私は最近joomlaサイトを3.9.1にアップグレードしましたが、カスタムコンポーネントの公開/非公開ボタンが機能せず、その理由を理解できません。データベースの列は「状態」と呼ばれ、これはアップグレードまで機能していたコードです。
JToolbarHelper::publish('items.publish', 'JTOOLBAR_PUBLISH', true);
JToolbarHelper::unpublish('items.unpublish', 'JTOOLBAR_UNPUBLISH', true);
これらのボタンは以前は機能しており、アイテムを公開/非公開にしていましたが、次のメッセージが表示されます:
件のアイテムが正常に公開されました
アイテムのステータスを更新するように指示するコードがどこにあるのかはわかりませんが、何らかの理由で機能しなくなりました。
テーブルのコンストラクター内でsetColumnAlias()
を使用して、実際の列名を定義します。
public function __construct($db)
{
parent::__construct('#__example', 'id', $db);
$this->setColumnAlias('published', 'state');
}