0
태그 아이디를 prestashop에서 가져 오려고하지만 TagsCore는 모든 태그 목록을 제공하지 않고 이름으로 태그를 가져 오는 방법을 포함하지 않습니다. 어떻게 든 사용자 정의 함수를 작성하지 않고도 가능합니까? 감사합니다 TagCore에서Prestashop 1.6> 모든 태그 가져 오기 또는 이름으로 태그 받기
태그 아이디를 prestashop에서 가져 오려고하지만 TagsCore는 모든 태그 목록을 제공하지 않고 이름으로 태그를 가져 오는 방법을 포함하지 않습니다. 어떻게 든 사용자 정의 함수를 작성하지 않고도 가능합니까? 감사합니다 TagCore에서Prestashop 1.6> 모든 태그 가져 오기 또는 이름으로 태그 받기
당신은 구조를 가지고 :
public function __construct($id = null, $name = null, $id_lang = null)
{
$this->def = Tag::getDefinition($this);
$this->setDefinitionRetrocompatibility();
if ($id) {
parent::__construct($id);
} elseif ($name && Validate::isGenericName($name) && $id_lang && Validate::isUnsignedId($id_lang)) {
$row = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow('
SELECT *
FROM `'._DB_PREFIX_.'tag` t
WHERE `name` = \''.pSQL($name).'\' AND `id_lang` = '.(int)$id_lang);
if ($row) {
$this->id = (int)$row['id_tag'];
$this->id_lang = (int)$row['id_lang'];
$this->name = $row['name'];
}
}
}
그래서, 당신은 호출하는 경우 :
$tag = new Tag(null, "stringtag", $id_lang);
if($tag->id !== null){
// stringtag exists for that id_lang
}
을하지만 모든 태그의 목록/수집을 얻기위한 방법이 없습니다. 그러나 같은 간단한 쿼리
Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'tag`')
또는
Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'tag` WHERE `id_lang`='.$id_lang)
모든 태그와 배열을 얻을 수있을만큼 간단합니다.