関数
ComboGroup::createComboGroup( int $comboSetId, string $label = '', bool $optional = false, bool $enableMultiSelect = false )
パラメータ パラメータ
- $comboSetId
(数値) (必須)
- $label
(文字列) (任意)
- $optional
(bool) (任意)
- $enableMultiSelect
(bool) (任意)
ファイル: src/API/ComboGroup.php
public static function createComboGroup($comboSetId, $label = '', $optional = false, $enableMultiSelect = false) {
global $wpdb;
$position = 0;
$curtime = Utils::getCurrentUTCDateTimeString();
$csgt = Schema::getComboSetGroupsTable();
$comboset = ComboSet::getComboSetById($comboSetId);
if ($comboset instanceof GenericError) {
return $comboset;
}
$isgitem = GroupItem::skuIsGroupItem($comboset->getSkuMetaId());
if ($isgitem instanceof GenericError) {
return $isgitem;
}
if ($isgitem === true) {
return Master::getErrorStore()->getErrorResponse(ErrorStore::SKU_IS_COMBO_SET_GROUP_ITEM);
}
$position = (int)$wpdb->get_var(
$wpdb->prepare("SELECT COUNT(ID) FROM {$csgt} WHERE combo_set_id = %d", $comboSetId)
);
$res = $wpdb->insert(
$csgt,
[
'combo_set_id' => $comboSetId,
'group_label' => (string)$label,
'optional' => (int)$optional,
'allow_multiple_selections' => (int)$enableMultiSelect,
'position' => $position,
'created_at' => $curtime,
'updated_at' => $curtime,
],
['%d', '%s', '%d', '%d', '%d', '%s', '%s']
);
if ($res === false) {
return Master::getErrorStore()->getErrorResponse(ErrorStore::INTERNAL_SERVER_ERROR);
}
return self::getComboGroupById($wpdb->insert_id);
}