Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function make_aliases()
- {
- //var_dump(str_replace("…",'-',$this->translit("BRAY СЕРИИ 20/21, DN 25…300, PN 10/16")));
- //exit(12);
- //ini_set('display_errors','ON');
- $sql='SELECT pd.*,ua.* FROM '.DB_PREFIX.'product t LEFT JOIN '.DB_PREFIX.'product_description pd ON(pd.product_id=t.product_id AND pd.language_id='.$this->config->get('config_language_id').')
- LEFT JOIN '.DB_PREFIX.'url_alias ua ON(ua.query=CONCAT("product_id=",t.product_id)) where ua.keyword IS NULL OR ua.keyword="" ';
- //$sql = 'SELECT * FROM '.DB_PREFIX.'url_alias';
- $p_q=$this->db->query($sql);
- //var_dump($p_q);
- //exit($_SERVER['HTTP_REFERER']);
- //exit('test');
- foreach($p_q->rows as $row)
- {
- $alias=$this->translit( ( !empty($row['u_title']) ) ? $row['u_title'] : ( !empty($row['u_h1'] ) ? $row['u_h1'] : $row['name']));
- //echo $alias.'<br>';
- if($alias)
- {
- $ex_q=$this->db->query('select * from '.DB_PREFIX.'url_alias WHERE keyword="'.$this->db->escape($alias).'"');
- if($ex_q->row) $alias.='_'.$row['product_id'];
- $this->db->query("INSERT INTO " . DB_PREFIX . "url_alias SET query = 'product_id=" . (int)$row['product_id'] . "', keyword = '" . $this->db->escape($alias) . "'");
- }
- }
- $sql='SELECT pd.*,ua.* FROM '.DB_PREFIX.'information t LEFT JOIN '.DB_PREFIX.'information_description pd ON(pd.information_id=t.information_id AND pd.language_id='.$this->config->get('config_language_id').')
- LEFT JOIN '.DB_PREFIX.'url_alias ua ON(ua.query=CONCAT("information_id=",t.information_id)) where ua.keyword IS NULL OR ua.keyword="" ';
- $p_q=$this->db->query($sql);
- //var_dump($p_q->row);
- //exit($_SERVER['HTTP_REFERER']);
- //exit('test');
- foreach($p_q->rows as $row)
- {
- $alias=$this->translit( $row['title'] );
- //echo $alias.'<br>';
- if($alias)
- {
- $ex_q=$this->db->query('select * from '.DB_PREFIX.'url_alias WHERE keyword="'.$this->db->escape($alias).'"');
- if($ex_q->row) $alias.='_'.$row['information_id'];
- $this->db->query("INSERT INTO " . DB_PREFIX . "url_alias SET query = 'information_id=" . (int)$row['information_id'] . "', keyword = '" . $this->db->escape($alias) . "'");
- }
- }
- $this->redirect($this->url->link('catalog/product', 'token=' . $this->session->data['token'] . $url, 'SSL'));
- exit('12');
- }
- private function translit($str_in)
- {
- $repls=array(
- 'а'=>'a', 'б'=>'b', 'в'=>'v', 'г'=>'g', 'д'=>'d', 'е'=>'e', 'ё'=>'e', 'ж'=>'j', 'з'=>'z', 'и'=>'i', 'й'=>'j', 'к'=>'k', 'л'=>'l',
- 'м'=>'m', 'н'=>'n', 'о'=>'o', 'п'=>'p', 'р'=>'r', 'с'=>'s', 'т'=>'t', 'у'=>'u', 'ф'=>'f',
- 'х'=>'h', 'ц'=>'c', 'ч'=>'ch', 'ш'=>'sch', 'щ'=>'sch','ь'=>'','ъ'=>'','ы'=>'y', 'э'=>'e', 'ю'=>'u', 'я'=>'ja',
- '!'=>'', '@'=>'', '#'=>'', '$'=>'', '%'=>'', '^'=>'', '&'=>'-', '*'=>'', " " => '-',
- '('=>'', ')'=>'', '='=>'', '.'=>'', ','=>'', '?'=>'', '/'=>'-', '"'=>'','quot' => '', '"' => '',
- '\\'=>'', '|'=>'', '"'=>'', "'"=>'', ' '=>'-', '...' => '-', "…" => '-', '&' => '-', 'amp;' => '-'
- );
- $str_in=mb_strtolower($str_in,'UTF-8');
- $str_out=strtr($str_in,$repls);
- return $str_out;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement