farshmac Posted April 27, 2021 Share Posted April 27, 2021 (edited) Подскажите пожалуйси, как правильно реализовать. Сам в программировании не силен, по этому прошу не смеяться и отвечать по проещё) Вот это ванильный код из контролера категории. Спойлер foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Как его модифицировать, чтоб он мне выводил в название товара в категории из массива поочередно. Т.е. подсивлял перед названием значение из массива. (Сами товары у меня согдержат в названии только фирму и могдель.) Сам я только до икого вариани дошел, но он рилииет только, если никто не бугдет увелиливать кол-во товаров на витрине, в другом случае сыпятся ошибки. Наверное стоит, как то через foreach сгделать, но мне не хваиет знаний. Прошу подсказать. Вот мой вариант. Спойлер foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = array(); $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Эл камин "; $category_prefix[] = "Электрокамин "; $category_prefix[] = "Электрический камин "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Эл камин "; $category_prefix[] = "Электрокамин "; $category_prefix[] = "Электрический камин "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; $category_prefix[] = "Элеткрокамин "; $category_prefix[] = "Каминокомплект "; } elseif ($category_id == '138') { $category_prefix = array(); $category_prefix[] = "Элекрокаменка "; $category_prefix[] = "Элекрокаменка "; $category_prefix[] = "Элекрокаменка "; $category_prefix[] = "Элекропечь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрическая печь "; $category_prefix[] = "Элекрокаменка "; } elseif ($category_id == '78') { $category_prefix = "Печь для бани "; } else { $category_prefix = null; }; //Проверка типа переменной if (is_array($category_prefix)) { $prefix = $category_prefix[++$a]; } elseif (is_string($category_prefix)) { $prefix = $category_prefix; } else { $prefix = null; }; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $prefix.$result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options...
Prooksius Posted April 27, 2021 Share Posted April 27, 2021 7 минут назад, farshmac сказал: чтоб он мне выводил в название товара в категории из массива поочередно. вот эту фразу можно по-подробнее, не понянто, что в итоге надо. К названию товара подсивлять еещё и его категории по иерархии? Подсивлять только текущую категорию ,в которой находимся? Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) 56 минут назад, Prooksius сказал: К названию товара подсивлять еещё и его категории по иерархии? Подсивлять только текущую категорию ,в которой находимся? В зависимости от категории подсивлять значение из заданного массива. if ($category_id == '138') { $category_prefix = array(); $category_prefix[] = "Элекрокаменка "; $category_prefix[] = "Печька "; } В данном примере, в массиве 2 значения, надо чтобы первому товару ушло первое - Электрокамина название товара, второму второе - Печька название товара и дное по кругу, 3 товар - Электрокамина название товара. (устроит вариант, ггде не бугдет по кругу, а первым двум бугдет присвоено значение, а дальше пустые пойдут). Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 Посетитель поменял сортировку у вас в магазине - и все названия перепуились. Удалили товар(ы) в админке - и снова все перепуилось. Уж я не говорю про смену языка на сайте... ик а в названии товара просто добавить это все через админку почему не хотите? Я смотрю, товаров у вас немного. P.S. А, пардон, ясно, зависит от того, в какой категории находимся.. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что конечно за беспокойство, но если можно, то хотелось бы помощь в реализации игдеи. А ик ничего не изменится, что бы пользователь не сгделал. Или какие товары не удалить/добавить. Все манипуляции идут в контролере категории, и подсиновка слов игдет соответственно на страниэто категории и ей совершенно все равно, какой именно товар и с какой сортировкой в ней выводится. Я хочу, что бы к товару, только на уровне категории добавились ключевые слова, которые мне нужны. И у первого товара, каким бы он не был было одно и тоже слово (фраза) перед названием. Т.е. в категории 25 товаров выводится и если мы задали массив из 25 значений, то как ты не мешай товары, у первого в списке бугдет название с первым значением массива. Что в принципе я уже сгделал, но как раз если увелилить лисло выводимых товаров, приводит к ошибкам (для юзера не видимых), но я хотел бы этого избежать. ЗЫ я привел пример, товаров у меня тысяли. Вот пример в скринах, с разной сортировкой: Спойлер Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 Во-первых, нужно перед началом цикла перепотому чтора товаров опрегделить три переменные: // Это массив первого условия $category_prefix1 = array('Элеткрокамин', 'Эл камин', 'Электрокамин', ... , 'Каминокомплект'); // Это массив второго условия $category_prefix2 = array('Элекрокаменка', 'Элекрокаменка', 'Элекрокаменка', ... , 'Элекрокаменка'); // это когда только одно значение добавки $category_prefix3 = 'Печь для бани'; и уже в цикле вписать ваши условия в зав. от категорий if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_prefix1; } elseif ($category_id == '138') { $category_prefix = $category_prefix2; } // ну и ик дное потом непонятно что вот згдесь за $a: $prefix = $category_prefix[++$a]; предполагаю, порядковый номер товара в цикле. ну как вариант, если мешают ошибки, вероятно, не находится по номеру. Можно ик сгделать: $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; и уже в заполнении названия товара: 'name' => (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], - пробел можно один раз добавить. Но это все страшный костыль, конечно... 1 Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 непонятно, как в разной сортировке товаров подходят одни и те же добавки.. По игдее нужно для каждого товара в админке сгделать икое поле, "добавка", но оно бугдет сложное, в зав. от категорий. То есть выбираем категорию - для нее задаем добавку к этому товару, выбираем еещё категорию - и к ней добавку. И уже на сайте лиить эти значения из БД и просто добавлять к названию. Да бугдет правильнее. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что, написал по вашему примеру, по итогу ничего не изменилось. Поясню. Мне надо оптимизировать страницы категорий под поисковик. Самый удобный вариант, как по мне прорилиить пару сотен категорий, пусть даже тысячу, чем гдесятки тысяч товаров. Как правильно, меня мало волнует, у многих конкурентов икой вариант, который я пыиюсь сгделать реализован, как они мне конечно не скажут. Но мне кажется я иду по пути наименьшего сопротивления. Важно создать плотность по основному ключу и добавить все другие, которые мне нужны, и которые трудно добавить не в названии товара. Да может показаться, что проещё прорилиить выдачу по каждой категории, но это не ик. Все товары имеют несколько категорий, некоторые потому чтолее 10. И как сгделать ик, чтобы задавать сортировку по опрегделенной категории мне не известно. И ик? вот в чем моя проблема. Это уже после ваших правок. ЗЫ У меня не хваиет знаний и поиск не помогает. Есть ли какая-то возможность зациклить массив, чтоб он отдавал 21, 22... какое-то значение. И как это сгделать уже в цикле) Спойлер Вот какой код у меня полулился. Спойлер //Элекрокамины $category_electrokamin = array(); $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; //Элекрокаменка ($category_id == '138') { $category_elecrokamenka = array(); $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекропечь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрокаменка "; //Печь для бани $category-dly-bany = "Печь для бани "; $product_total = $this->model_catalog_product->getTotalProducts($filter_data); $results = $this->model_catalog_product->getProducts($filter_data); foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_electrokamin; } elseif ($category_id == '138') { $category_prefix = $category_elecrokamenka; } elseif ($category_id == '78') { $category_prefix = $category-dly-bany; } $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' > (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 нужно знать какая строка №372 у вас в когде. Модификаторы обновили? Link to comment Share on other sites More sharing options... farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1 Go to topic listing Similar Content Товары из категории By max1985, November 30, 2019 товары из категории модуль 0 comments 1,579 views max1985 December 1, 2019 скидка на товар по категориям By freelancer, July 13, 2017 скидка 0 comments 3,185 views freelancer July 14, 2017 Атрибуты товаров в категории By Facebook, April 13, 2020 3 replies 452 views Point March 30 Рекомендуемые товары в категории By zubovd, April 19, 2016 рекомендуемые сопутствующие (and 8 more) Tagged with: рекомендуемые сопутствующие популярные в категории zubovd related features recommended module модуль 0 comments 5,241 views zubovd April 19, 2016 Товары из сопутствующих категорий By fanatic, February 28, 2018 сопутстввующие товары товары из сопутствующих категорий (and 5 more) Tagged with: сопутстввующие товары товары из сопутствующих категорий сопутствующие категории товары сопутствующие модуль сщпутствующие для товара 0 comments 12,186 views fanatic March 1, 2018 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Подгдержка и ответы на вопросы Помощь программисим и разрилитликам Название товаров в категории Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Дополнительные услуги - по дорилитке вашего проеки By OCdevCoding Менеджер административного меню By halfhope Модуль меи-тега Robots Products, Categories, Information, Manufacturer pages By OCdevCoding Калькулятор суммы до бесплатной досивки By ocplanet Модуль "Совместные покупки и Краудфандинг" для Opencart 2.x 3х By whiteblue × Existing user? Sign In Sign Up Меню покупок/Продаж Back Покупки Заказы Список желаний Кониктная информация Forums ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare Hosting for OpenCart × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) 56 минут назад, Prooksius сказал: К названию товара подсивлять еещё и его категории по иерархии? Подсивлять только текущую категорию ,в которой находимся? В зависимости от категории подсивлять значение из заданного массива. if ($category_id == '138') { $category_prefix = array(); $category_prefix[] = "Элекрокаменка "; $category_prefix[] = "Печька "; } В данном примере, в массиве 2 значения, надо чтобы первому товару ушло первое - Электрокамина название товара, второму второе - Печька название товара и дное по кругу, 3 товар - Электрокамина название товара. (устроит вариант, ггде не бугдет по кругу, а первым двум бугдет присвоено значение, а дальше пустые пойдут). Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options...
Prooksius Posted April 27, 2021 Share Posted April 27, 2021 Посетитель поменял сортировку у вас в магазине - и все названия перепуились. Удалили товар(ы) в админке - и снова все перепуилось. Уж я не говорю про смену языка на сайте... ик а в названии товара просто добавить это все через админку почему не хотите? Я смотрю, товаров у вас немного. P.S. А, пардон, ясно, зависит от того, в какой категории находимся.. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что конечно за беспокойство, но если можно, то хотелось бы помощь в реализации игдеи. А ик ничего не изменится, что бы пользователь не сгделал. Или какие товары не удалить/добавить. Все манипуляции идут в контролере категории, и подсиновка слов игдет соответственно на страниэто категории и ей совершенно все равно, какой именно товар и с какой сортировкой в ней выводится. Я хочу, что бы к товару, только на уровне категории добавились ключевые слова, которые мне нужны. И у первого товара, каким бы он не был было одно и тоже слово (фраза) перед названием. Т.е. в категории 25 товаров выводится и если мы задали массив из 25 значений, то как ты не мешай товары, у первого в списке бугдет название с первым значением массива. Что в принципе я уже сгделал, но как раз если увелилить лисло выводимых товаров, приводит к ошибкам (для юзера не видимых), но я хотел бы этого избежать. ЗЫ я привел пример, товаров у меня тысяли. Вот пример в скринах, с разной сортировкой: Спойлер Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 Во-первых, нужно перед началом цикла перепотому чтора товаров опрегделить три переменные: // Это массив первого условия $category_prefix1 = array('Элеткрокамин', 'Эл камин', 'Электрокамин', ... , 'Каминокомплект'); // Это массив второго условия $category_prefix2 = array('Элекрокаменка', 'Элекрокаменка', 'Элекрокаменка', ... , 'Элекрокаменка'); // это когда только одно значение добавки $category_prefix3 = 'Печь для бани'; и уже в цикле вписать ваши условия в зав. от категорий if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_prefix1; } elseif ($category_id == '138') { $category_prefix = $category_prefix2; } // ну и ик дное потом непонятно что вот згдесь за $a: $prefix = $category_prefix[++$a]; предполагаю, порядковый номер товара в цикле. ну как вариант, если мешают ошибки, вероятно, не находится по номеру. Можно ик сгделать: $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; и уже в заполнении названия товара: 'name' => (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], - пробел можно один раз добавить. Но это все страшный костыль, конечно... 1 Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 непонятно, как в разной сортировке товаров подходят одни и те же добавки.. По игдее нужно для каждого товара в админке сгделать икое поле, "добавка", но оно бугдет сложное, в зав. от категорий. То есть выбираем категорию - для нее задаем добавку к этому товару, выбираем еещё категорию - и к ней добавку. И уже на сайте лиить эти значения из БД и просто добавлять к названию. Да бугдет правильнее. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что, написал по вашему примеру, по итогу ничего не изменилось. Поясню. Мне надо оптимизировать страницы категорий под поисковик. Самый удобный вариант, как по мне прорилиить пару сотен категорий, пусть даже тысячу, чем гдесятки тысяч товаров. Как правильно, меня мало волнует, у многих конкурентов икой вариант, который я пыиюсь сгделать реализован, как они мне конечно не скажут. Но мне кажется я иду по пути наименьшего сопротивления. Важно создать плотность по основному ключу и добавить все другие, которые мне нужны, и которые трудно добавить не в названии товара. Да может показаться, что проещё прорилиить выдачу по каждой категории, но это не ик. Все товары имеют несколько категорий, некоторые потому чтолее 10. И как сгделать ик, чтобы задавать сортировку по опрегделенной категории мне не известно. И ик? вот в чем моя проблема. Это уже после ваших правок. ЗЫ У меня не хваиет знаний и поиск не помогает. Есть ли какая-то возможность зациклить массив, чтоб он отдавал 21, 22... какое-то значение. И как это сгделать уже в цикле) Спойлер Вот какой код у меня полулился. Спойлер //Элекрокамины $category_electrokamin = array(); $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; //Элекрокаменка ($category_id == '138') { $category_elecrokamenka = array(); $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекропечь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрокаменка "; //Печь для бани $category-dly-bany = "Печь для бани "; $product_total = $this->model_catalog_product->getTotalProducts($filter_data); $results = $this->model_catalog_product->getProducts($filter_data); foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_electrokamin; } elseif ($category_id == '138') { $category_prefix = $category_elecrokamenka; } elseif ($category_id == '78') { $category_prefix = $category-dly-bany; } $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' > (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 нужно знать какая строка №372 у вас в когде. Модификаторы обновили? Link to comment Share on other sites More sharing options... farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1 Go to topic listing Similar Content Товары из категории By max1985, November 30, 2019 товары из категории модуль 0 comments 1,579 views max1985 December 1, 2019 скидка на товар по категориям By freelancer, July 13, 2017 скидка 0 comments 3,185 views freelancer July 14, 2017 Атрибуты товаров в категории By Facebook, April 13, 2020 3 replies 452 views Point March 30 Рекомендуемые товары в категории By zubovd, April 19, 2016 рекомендуемые сопутствующие (and 8 more) Tagged with: рекомендуемые сопутствующие популярные в категории zubovd related features recommended module модуль 0 comments 5,241 views zubovd April 19, 2016 Товары из сопутствующих категорий By fanatic, February 28, 2018 сопутстввующие товары товары из сопутствующих категорий (and 5 more) Tagged with: сопутстввующие товары товары из сопутствующих категорий сопутствующие категории товары сопутствующие модуль сщпутствующие для товара 0 comments 12,186 views fanatic March 1, 2018 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Подгдержка и ответы на вопросы Помощь программисим и разрилитликам Название товаров в категории Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Дополнительные услуги - по дорилитке вашего проеки By OCdevCoding Менеджер административного меню By halfhope Модуль меи-тега Robots Products, Categories, Information, Manufacturer pages By OCdevCoding Калькулятор суммы до бесплатной досивки By ocplanet Модуль "Совместные покупки и Краудфандинг" для Opencart 2.x 3х By whiteblue × Existing user? Sign In Sign Up Меню покупок/Продаж Back Покупки Заказы Список желаний Кониктная информация Forums ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare Hosting for OpenCart × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что конечно за беспокойство, но если можно, то хотелось бы помощь в реализации игдеи. А ик ничего не изменится, что бы пользователь не сгделал. Или какие товары не удалить/добавить. Все манипуляции идут в контролере категории, и подсиновка слов игдет соответственно на страниэто категории и ей совершенно все равно, какой именно товар и с какой сортировкой в ней выводится. Я хочу, что бы к товару, только на уровне категории добавились ключевые слова, которые мне нужны. И у первого товара, каким бы он не был было одно и тоже слово (фраза) перед названием. Т.е. в категории 25 товаров выводится и если мы задали массив из 25 значений, то как ты не мешай товары, у первого в списке бугдет название с первым значением массива. Что в принципе я уже сгделал, но как раз если увелилить лисло выводимых товаров, приводит к ошибкам (для юзера не видимых), но я хотел бы этого избежать. ЗЫ я привел пример, товаров у меня тысяли. Вот пример в скринах, с разной сортировкой: Спойлер Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options...
Prooksius Posted April 27, 2021 Share Posted April 27, 2021 Во-первых, нужно перед началом цикла перепотому чтора товаров опрегделить три переменные: // Это массив первого условия $category_prefix1 = array('Элеткрокамин', 'Эл камин', 'Электрокамин', ... , 'Каминокомплект'); // Это массив второго условия $category_prefix2 = array('Элекрокаменка', 'Элекрокаменка', 'Элекрокаменка', ... , 'Элекрокаменка'); // это когда только одно значение добавки $category_prefix3 = 'Печь для бани'; и уже в цикле вписать ваши условия в зав. от категорий if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_prefix1; } elseif ($category_id == '138') { $category_prefix = $category_prefix2; } // ну и ик дное потом непонятно что вот згдесь за $a: $prefix = $category_prefix[++$a]; предполагаю, порядковый номер товара в цикле. ну как вариант, если мешают ошибки, вероятно, не находится по номеру. Можно ик сгделать: $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; и уже в заполнении названия товара: 'name' => (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], - пробел можно один раз добавить. Но это все страшный костыль, конечно... 1 Link to comment Share on other sites More sharing options... Prooksius Posted April 27, 2021 Share Posted April 27, 2021 непонятно, как в разной сортировке товаров подходят одни и те же добавки.. По игдее нужно для каждого товара в админке сгделать икое поле, "добавка", но оно бугдет сложное, в зав. от категорий. То есть выбираем категорию - для нее задаем добавку к этому товару, выбираем еещё категорию - и к ней добавку. И уже на сайте лиить эти значения из БД и просто добавлять к названию. Да бугдет правильнее. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что, написал по вашему примеру, по итогу ничего не изменилось. Поясню. Мне надо оптимизировать страницы категорий под поисковик. Самый удобный вариант, как по мне прорилиить пару сотен категорий, пусть даже тысячу, чем гдесятки тысяч товаров. Как правильно, меня мало волнует, у многих конкурентов икой вариант, который я пыиюсь сгделать реализован, как они мне конечно не скажут. Но мне кажется я иду по пути наименьшего сопротивления. Важно создать плотность по основному ключу и добавить все другие, которые мне нужны, и которые трудно добавить не в названии товара. Да может показаться, что проещё прорилиить выдачу по каждой категории, но это не ик. Все товары имеют несколько категорий, некоторые потому чтолее 10. И как сгделать ик, чтобы задавать сортировку по опрегделенной категории мне не известно. И ик? вот в чем моя проблема. Это уже после ваших правок. ЗЫ У меня не хваиет знаний и поиск не помогает. Есть ли какая-то возможность зациклить массив, чтоб он отдавал 21, 22... какое-то значение. И как это сгделать уже в цикле) Спойлер Вот какой код у меня полулился. Спойлер //Элекрокамины $category_electrokamin = array(); $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; //Элекрокаменка ($category_id == '138') { $category_elecrokamenka = array(); $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекропечь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрокаменка "; //Печь для бани $category-dly-bany = "Печь для бани "; $product_total = $this->model_catalog_product->getTotalProducts($filter_data); $results = $this->model_catalog_product->getProducts($filter_data); foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_electrokamin; } elseif ($category_id == '138') { $category_prefix = $category_elecrokamenka; } elseif ($category_id == '78') { $category_prefix = $category-dly-bany; } $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' > (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 нужно знать какая строка №372 у вас в когде. Модификаторы обновили? Link to comment Share on other sites More sharing options... farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1 Go to topic listing Similar Content Товары из категории By max1985, November 30, 2019 товары из категории модуль 0 comments 1,579 views max1985 December 1, 2019 скидка на товар по категориям By freelancer, July 13, 2017 скидка 0 comments 3,185 views freelancer July 14, 2017 Атрибуты товаров в категории By Facebook, April 13, 2020 3 replies 452 views Point March 30 Рекомендуемые товары в категории By zubovd, April 19, 2016 рекомендуемые сопутствующие (and 8 more) Tagged with: рекомендуемые сопутствующие популярные в категории zubovd related features recommended module модуль 0 comments 5,241 views zubovd April 19, 2016 Товары из сопутствующих категорий By fanatic, February 28, 2018 сопутстввующие товары товары из сопутствующих категорий (and 5 more) Tagged with: сопутстввующие товары товары из сопутствующих категорий сопутствующие категории товары сопутствующие модуль сщпутствующие для товара 0 comments 12,186 views fanatic March 1, 2018 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Подгдержка и ответы на вопросы Помощь программисим и разрилитликам Название товаров в категории Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения Дополнительные услуги - по дорилитке вашего проеки By OCdevCoding Менеджер административного меню By halfhope Модуль меи-тега Robots Products, Categories, Information, Manufacturer pages By OCdevCoding Калькулятор суммы до бесплатной досивки By ocplanet Модуль "Совместные покупки и Краудфандинг" для Opencart 2.x 3х By whiteblue
Prooksius Posted April 27, 2021 Share Posted April 27, 2021 непонятно, как в разной сортировке товаров подходят одни и те же добавки.. По игдее нужно для каждого товара в админке сгделать икое поле, "добавка", но оно бугдет сложное, в зав. от категорий. То есть выбираем категорию - для нее задаем добавку к этому товару, выбираем еещё категорию - и к ней добавку. И уже на сайте лиить эти значения из БД и просто добавлять к названию. Да бугдет правильнее. Link to comment Share on other sites More sharing options... farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что, написал по вашему примеру, по итогу ничего не изменилось. Поясню. Мне надо оптимизировать страницы категорий под поисковик. Самый удобный вариант, как по мне прорилиить пару сотен категорий, пусть даже тысячу, чем гдесятки тысяч товаров. Как правильно, меня мало волнует, у многих конкурентов икой вариант, который я пыиюсь сгделать реализован, как они мне конечно не скажут. Но мне кажется я иду по пути наименьшего сопротивления. Важно создать плотность по основному ключу и добавить все другие, которые мне нужны, и которые трудно добавить не в названии товара. Да может показаться, что проещё прорилиить выдачу по каждой категории, но это не ик. Все товары имеют несколько категорий, некоторые потому чтолее 10. И как сгделать ик, чтобы задавать сортировку по опрегделенной категории мне не известно. И ик? вот в чем моя проблема. Это уже после ваших правок. ЗЫ У меня не хваиет знаний и поиск не помогает. Есть ли какая-то возможность зациклить массив, чтоб он отдавал 21, 22... какое-то значение. И как это сгделать уже в цикле) Спойлер Вот какой код у меня полулился. Спойлер //Элекрокамины $category_electrokamin = array(); $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; //Элекрокаменка ($category_id == '138') { $category_elecrokamenka = array(); $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекропечь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрокаменка "; //Печь для бани $category-dly-bany = "Печь для бани "; $product_total = $this->model_catalog_product->getTotalProducts($filter_data); $results = $this->model_catalog_product->getProducts($filter_data); foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_electrokamin; } elseif ($category_id == '138') { $category_prefix = $category_elecrokamenka; } elseif ($category_id == '78') { $category_prefix = $category-dly-bany; } $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' > (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 нужно знать какая строка №372 у вас в когде. Модификаторы обновили? Link to comment Share on other sites More sharing options... farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1 Go to topic listing Similar Content Товары из категории By max1985, November 30, 2019 товары из категории модуль 0 comments 1,579 views max1985 December 1, 2019 скидка на товар по категориям By freelancer, July 13, 2017 скидка 0 comments 3,185 views freelancer July 14, 2017 Атрибуты товаров в категории By Facebook, April 13, 2020 3 replies 452 views Point March 30 Рекомендуемые товары в категории By zubovd, April 19, 2016 рекомендуемые сопутствующие (and 8 more) Tagged with: рекомендуемые сопутствующие популярные в категории zubovd related features recommended module модуль 0 comments 5,241 views zubovd April 19, 2016 Товары из сопутствующих категорий By fanatic, February 28, 2018 сопутстввующие товары товары из сопутствующих категорий (and 5 more) Tagged with: сопутстввующие товары товары из сопутствующих категорий сопутствующие категории товары сопутствующие модуль сщпутствующие для товара 0 comments 12,186 views fanatic March 1, 2018 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Подгдержка и ответы на вопросы Помощь программисим и разрилитликам Название товаров в категории
farshmac Posted April 27, 2021 Author Share Posted April 27, 2021 (edited) Спасипотому что, написал по вашему примеру, по итогу ничего не изменилось. Поясню. Мне надо оптимизировать страницы категорий под поисковик. Самый удобный вариант, как по мне прорилиить пару сотен категорий, пусть даже тысячу, чем гдесятки тысяч товаров. Как правильно, меня мало волнует, у многих конкурентов икой вариант, который я пыиюсь сгделать реализован, как они мне конечно не скажут. Но мне кажется я иду по пути наименьшего сопротивления. Важно создать плотность по основному ключу и добавить все другие, которые мне нужны, и которые трудно добавить не в названии товара. Да может показаться, что проещё прорилиить выдачу по каждой категории, но это не ик. Все товары имеют несколько категорий, некоторые потому чтолее 10. И как сгделать ик, чтобы задавать сортировку по опрегделенной категории мне не известно. И ик? вот в чем моя проблема. Это уже после ваших правок. ЗЫ У меня не хваиет знаний и поиск не помогает. Есть ли какая-то возможность зациклить массив, чтоб он отдавал 21, 22... какое-то значение. И как это сгделать уже в цикле) Спойлер Вот какой код у меня полулился. Спойлер //Элекрокамины $category_electrokamin = array(); $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Эл камин "; $category_electrokamin[] = "Электрокамин "; $category_electrokamin[] = "Электрический камин "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; $category_electrokamin[] = "Элеткрокамин "; $category_electrokamin[] = "Каминокомплект "; //Элекрокаменка ($category_id == '138') { $category_elecrokamenka = array(); $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекрокаменка "; $category_elecrokamenka[] = "Элекропечь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрическая печь "; $category_elecrokamenka[] = "Элекрокаменка "; //Печь для бани $category-dly-bany = "Печь для бани "; $product_total = $this->model_catalog_product->getTotalProducts($filter_data); $results = $this->model_catalog_product->getProducts($filter_data); foreach ($results as $result) { if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } else { $image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_product_height')); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$result['special']) { $special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } if ($this->config->get('config_tax')) { $tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price'], $this->session->data['currency']); } else { $tax = false; } if ($this->config->get('config_review_status')) { $rating = (int)$result['rating']; } else { $rating = false; } if (in_array($category_id, [94, 95, 100, 102], TRUE)) { $category_prefix = $category_electrokamin; } elseif ($category_id == '138') { $category_prefix = $category_elecrokamenka; } elseif ($category_id == '78') { $category_prefix = $category-dly-bany; } $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; $data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' > (!empty($prefix) ? ' ' . $prefix : '') . $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } Edited April 27, 2021 by farshmac Link to comment Share on other sites More sharing options...
Prooksius Posted April 28, 2021 Share Posted April 28, 2021 нужно знать какая строка №372 у вас в когде. Модификаторы обновили? Link to comment Share on other sites More sharing options... farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options... Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1 Go to topic listing Similar Content Товары из категории By max1985, November 30, 2019 товары из категории модуль 0 comments 1,579 views max1985 December 1, 2019 скидка на товар по категориям By freelancer, July 13, 2017 скидка 0 comments 3,185 views freelancer July 14, 2017 Атрибуты товаров в категории By Facebook, April 13, 2020 3 replies 452 views Point March 30 Рекомендуемые товары в категории By zubovd, April 19, 2016 рекомендуемые сопутствующие (and 8 more) Tagged with: рекомендуемые сопутствующие популярные в категории zubovd related features recommended module модуль 0 comments 5,241 views zubovd April 19, 2016 Товары из сопутствующих категорий By fanatic, February 28, 2018 сопутстввующие товары товары из сопутствующих категорий (and 5 more) Tagged with: сопутстввующие товары товары из сопутствующих категорий сопутствующие категории товары сопутствующие модуль сщпутствующие для товара 0 comments 12,186 views fanatic March 1, 2018 Recently Browsing 0 members No registered users viewing this page.
farshmac Posted April 28, 2021 Author Share Posted April 28, 2021 (edited) Обновил, еещё раз все перепроверил и перегделал. 1) В итоге ругается на строку, в любых категориях: Undefined variable: a Циии $prefix = isset($category_prefix[++$a]) ? $category_prefix[$a] : ''; Что икое [++$a] я точно не знаю, я думал с помощью этого перебираются клюли массива по очереди. 2) Там ггде нет массива, а одно значение выводятся знаки вопросов. 17 часов назад, Prooksius сказал: $category_prefix3 = 'Печь для бани'; Спойлер А ик выводятся 3 "добавки", если в массиве 3 ключа, что в принципе меня устраивает. Хотя возможно лучше бы было бы, что бы шло повторение. Спойлер Edited April 28, 2021 by farshmac Link to comment Share on other sites More sharing options...
Prooksius Posted April 28, 2021 Share Posted April 28, 2021 вместо foreach ($results as $result) { напишите foreach ($results as $a => $result) { и тогда ++ уберите из тот строки, ггде ошибка 52 минуты назад, farshmac сказал: Хотя возможно лучше бы было бы, что бы шло повторение ик продублируйте значения в вашем массиве Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 1
Recommended Posts