public static function addTags($id_lang = null, $id_post, $tag_list, $separator = ',') { if ($id_lang == null) { $id_lang = (int) Context::getContext()->language->id; } if (!Validate::isUnsignedId($id_lang)) { return false; } if (!is_array($tag_list)) { $tag_list = array_filter(array_unique(array_map('trim', preg_split('#\\' . $separator . '#', $tag_list, null, PREG_SPLIT_NO_EMPTY)))); } $list = array(); if (is_array($tag_list)) { foreach ($tag_list as $tag) { $id_tag = BlogTag::TagExists($tag, (int) $id_lang); if (!$id_tag) { $tag_obj = new BlogTag(null, $tag, (int) $id_lang); if (!Validate::isLoadedObject($tag_obj)) { $tag_obj->name = $tag; $tag_obj->id_lang = (int) $id_lang; $tag_obj->add(); } if (!in_array($tag_obj->id, $list)) { $list[] = $tag_obj->id; } } else { if (!in_array($id_tag, $list)) { $list[] = $id_tag; } } } } $data = ''; foreach ($list as $tag) { $data .= '(' . (int) $tag . ',' . (int) $id_post . '),'; } $data = rtrim($data, ','); return Db::getInstance()->execute(' INSERT INTO `' . _DB_PREFIX_ . 'smart_blog_post_tag` (`id_tag`, `id_post`) VALUES ' . $data); }