-
Posts
91 -
Joined
-
Last visited
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by lakbor
-
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
То есть вы всё засунули в ячейку с Суммой заказа, и там отображается только сама сумма, больше ничего, я правильно понял? -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
а в тпл'ке как выглядит вывод? -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
День добрый. только что скачал: Версия ocStore 2.1.0.2.1 Часть 1. Файл order.php /admin/controller/sale/order.php У меня правки нужно вносить в районе 159 строки, у вас может по-другому (из-за разности версий), но смысл сохраняется В начале цикла foreach ($results as $result) { Вставляем: $my_order_info = $this->model_sale_order->getOrder($result['order_id']); $my_products = $this->model_sale_order->getOrderProducts($result['order_id']); foreach ($my_products as $product) { $my_product[] = array( 'order_product_id' => $product['order_product_id'], 'product_id' => $product['product_id'], 'name' => $product['name'], 'model' => $product['model'], 'quantity' => $product['quantity'], ); } Затем в этом же цикле в массив $data['orders'][] добавляем две строки (my_products и my_comment): $data['orders'][] = array( 'order_id' => $result['order_id'], 'customer' => $result['customer'], 'status' => $result['status'], 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'date_modified' => date($this->language->get('date_format_short'), strtotime($result['date_modified'])), 'shipping_code' => $result['shipping_code'], 'view' => $this->url->link('sale/order/info', 'token=' . $this->session->data['token'] . '&order_id=' . $result['order_id'] . $url, 'SSL'), 'edit' => $this->url->link('sale/order/edit', 'token=' . $this->session->data['token'] . '&order_id=' . $result['order_id'] . $url, 'SSL'), 'my_products' => $my_product, 'my_comment' => $my_order_info['comment'] ); Часть 2. Файл order_list.tpl Сначала добавляем заголовки столбцов, затем собержимое. для столбца с продуктами: <td class="text-left"> <?php foreach($order['my_products'] as $my_product){ echo $my_product['name'] . '<br />'; } ?> </td> для столбца с комментом: <td class="text-left"> <?=$order['my_comment']?> </td> Из массива $my_product можно соответственно вытянуть ID, model, количество, это на ваше усмотрение. оформление поля в самом списке тоже на ваш вкус, можно через список сделать, или как в примере просто <br>'ом В итоге, в версии 2.1 поменялось только (для данной ситуации, разумеется) расположение места где подгружать информацию о товарах и, соответственно, место впихивания в массив $data -
[Решено] файл category.tpl
lakbor replied to webwork's topic in Допомога програмістам та розробникам
это стандартный предекремент, никакой магии) З.Ы. Ваш способ с использованием array_pop() уменьшает массив хлебных крошек на один элемент, и использовать его (массив) впоследствии не представляется возможным, а вдруг понадобится) -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
Добрый день, реализация чего именно интересует на 2.1? про адрес или товары?) или не интересует уже?)) -
Вывод иконок в зависимости от значения атрибута
lakbor replied to DRONGO's topic in Допомога програмістам та розробникам
Добрый вечер! Как-то давно, в 2013м году я реализовывал нечто похожее следующим образом: <?php $cat1 = '^Сезонность$'; //Первое слово для сравнения, заключается в символы ^ и $ $cat2 = '^Зимняя$'; $text1 = '/' . iconv("windows-1251", "utf-8//IGNORE", $cat1) . '/'; // приведение слова в кодировку utf-8 (можно не делать, если сразу сохраняться в utf-8) $text2 = '/' . iconv("windows-1251", "utf-8//IGNORE", $cat2) . '/'; ?> <?php if (preg_match($text1, $attribute['name']) && preg_match($text2, $attribute['text']) { echo "<img src='/img/zimnyaya.jpg'>"; } ?> -
Характеристики и Кнопка "В корзину" не вмещаются
lakbor replied to xweirdo's topic in Opencart 2.x: Sandbox
Добрый день! В целом, логичнее сжать столбец "Характеристики", но если нужно всё-таки сжать див с кнопкой купить, то нужно его перегруппировывать: - уменьшить название товара (stylesheet.css тег H1, атрибут font-size) - "кол-во" и конпку "купить" вынести в одну строку (править product.tpl в шаблоне, размеры поля и кнопки в stylesheet.css) -
[Решено] Кнопка копировать для категорий
lakbor replied to ZippoMan's topic in Допомога програмістам та розробникам
Упс) давненько я не заходил на Форум... Ещё актуально?:) -
catalog/view/theme/_THEME_/template/checkout/confirm.tpl
-
Как правильно заполнять поля товара
lakbor replied to federal24's topic in SEO-питання (оптимізація та просування магазину)
То что вы заполняете в админке "Н1" - это название товара, которое отображается в карточке товара. Поле "Название" - это то, как имя товара выглядит в админке, в категориях, в модулях, в корзине итп. То есть "Название" - это всеселое по CMS имя товара, "H1" - название тлько для карточки товара. Чтобы в карточке товара было то же самое, что и в названии - либо заполняйте в админкеэти поля одинаковым текстом, либо не заполняйте "Н1" вообще (тогда opencart сам подставит на сайте название) Зачем это разделение? - для СЕО. Поисковые роботы ранжируют инфу на странице, учитывая важность заголовков, коим и является тег H1 -
Открывайте файл: ***/module/category.tpl В нем ищите строку: <?php if ($category['category_id'] == $category_id) { ?> Замените ее на эту: <?php if ($category['category_id'] == $category_id || $category_id == 0) { ?>
-
Как добавить новый <div> для товара в списке товаров?
lakbor replied to pezl's topic in Допомога програмістам та розробникам
Но сам див как ссылка на товар должен работать, я тестил -
Как добавить новый <div> для товара в списке товаров?
lakbor replied to pezl's topic in Допомога програмістам та розробникам
Получилось не совсем так, как ты просил, потому что я не особый знаток css, а тут все div'ы на нем завязаны. Итак, в чем отличие полученного от запрошенного? - В том, что в див входят кнопка купить, линки в сравнение и в закладки. Правим: /catalog/view/theme/default/template/product/category.tpl В самое начало вставляем: <style type="text/css"> #divlink { background-color: red; /*красный цвет для примера, чтобы див был виден*/ cursor: pointer; } </style> Дальше ищешь строку: <div class="product-list"> <?php foreach ($products as $product) { ?> <div> последний Див меняешь на <div id="divlink" onClick="clicker('<?php echo $product['href'];?>');"> И последнее, в Javascript внизу перед функцией function display(view) { вставляешь: function clicker (dest){ window.location.href = dest; } готово -
Как добавить новый <div> для товара в списке товаров?
lakbor replied to pezl's topic in Допомога програмістам та розробникам
у меня вопрос, после ответа на него подскажу как именно реализовать задумку. Зачем это нужно, что должно получиться в итоге? (цвет иной, расположение, еще что-то? напиши как можно подробнее) -
[Решено] Кнопка копировать для категорий
lakbor replied to ZippoMan's topic in Допомога програмістам та розробникам
ВНИМАНИЕ! Во время обкатки на одной и той же версии движка (1.5.4.1), но почему-то различающихся в коде, были выявлены ряд ошибок! из-за расхождений в коде, естественно. (расхождения оказались даже в БД) поэтому, если решите воспользоваться кодом выше - лучше свяжитесь со мной чтобы доработать код напильником под вашу уникальную версию движка -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
Если можно опять поясните не хочу тупо копировать есть желание хоть чего то выучить основы учил на C# думал что пхп будет попроще $my_product = array(); это создаем массив да? но скобки пустые //ОБЪЯВЛЯЕМ массив $my_products = $this->model_sale_order->getOrderProducts($result['order_id']); в $my_products -> вызывает функцию model_sale_order от туда getOrderProducts ?? ($result['order_id']); //Вызываем функцию getOrderProducts() класса model_sale_order и пишем результат ее работы в $my_products foreach ($my_products as $product) ищим $my_products в $product и если находим то выполняем условие да? //Не, этим циклом ПЕРЕБИРАЕМ все элементы массива $my_products и на каждой итерации цикла работаем с каждым элементом в отдельности через переменную $product { $my_product[] = array( 'order_product_id' => $product['order_product_id'], 'product_id' => $product['product_id'], 'name' => $product['name'], 'model' => $product['model'], 'quantity' => $product['quantity'], ); } в 'products_ordered' => заносим массив $my_product, //Это к какой части кода вопрос? <?php $i=0; $my_prods = $order['products_ordered']; while ($i < sizeof($my_prods)) цикл если i < ?? //Пока $i меньше размера массива $my_prods, sizeof() или, что то же самое, count(), возвращает кол-во элементов в массиве { echo '>> '. $my_prods[$i]['quantity'] . ' x ' . $my_prods[$i]['name'] . '<br>'; ???? $i++; инкримент вроде +1 }?> //расписываю цикл полностью: $i обнуляем создаем массив $my_prods и засовываем в него массив проданных товаров, вытянутый из общего массива $order пока ($i меньше количества элементов в массиве $my_prods) { выводим текст ">>" точкой присоединяем к нему значение $my_prods[$i счетчик товарных позиций][количество товара данной позиции] присоединяем к выводимой строке крестик, присоединяем тем же способом название товара из заказа, соответствующее товарной позиции $i, переходим на новую строку Увеличить значение переменной на 1 можно: а) $i = $i + 1; // Тут все понятно, я думаю б) $i++; //ПОСТинкремент в) ++$i; //ПРЕинкремент г) $i += 1; // То же самое, что и под буквой А, только в укороченной форме -
[Решено] Кнопка копировать для категорий
lakbor replied to ZippoMan's topic in Допомога програмістам та розробникам
ВНИМАНИЕ! Все изменения, вносимые в код вы делаете на свой страх и риск, все файлы советую бэкапить, В ТОМ ЧИСЛЕ БАЗУ ДАННЫХ! Также, есть три нюанса: 1. почему-то не переводит по завершению обратно на страницу категорий, но я думаю не оч сложно нажать в браузере "назад", попозже доработаю 2. при работе выводит кучу мусора на страницу, инфа служебная, я ей пользовался при отладке, не смущайтесь также на ошибки и предупреждения, все работает с ними. 3. если у категории есть подкатегории, то они не копируются при копировании родительской. Приступаем! 1) открываем файл /admin/controller/catalog/category.php Ищем функцию public function insert() { $this->load->language('catalog/category'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('catalog/category'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { $this->model_catalog_category->addCategory($this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $this->redirect($this->url->link('catalog/category', 'token=' . $this->session->data['token'], 'SSL')); } $this->getForm(); } ПОСЛЕ нее вставляем следующий код: /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// public function my_copy() { $this->load->language('catalog/category'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('catalog/category'); if (isset($this->request->post['selected'])) { foreach ($this->request->post['selected'] as $category_id) { $this->my_copycat($category_id); } $this->redirect($this->url->link('catalog/category', 'token=' . $this->session->data['token'], 'SSL')); } $this->getList(); } private function my_copycat($cid) { // GET LAST CID $query_id = $this->db->query("SELECT * FROM category;"); $last_cid=0; foreach ($query_id as $qwerty_id) { foreach ($qwerty_id as $qqqq) { if ($last_cid < (int)$qqqq['category_id']) { $last_cid = (int)$qqqq['category_id']; } else { ;} } } echo ++$last_cid; // 1-st QUERY ('category' DB) $qq = "SELECT * FROM category WHERE category_id = " . $cid . ";"; $query = $this->db->query($qq); $my_category = array(); foreach ($query as $qwerty) { foreach ($qwerty as $qqqq) { foreach ($qqqq as $mkey => $mval) { if ($mval == '') { $my_category[$mkey] = 'NULL'; } else { $my_category[$mkey] = $mval; } } } } // 2-nd QUERY ('category_description' DB) $qq = "SELECT * FROM category_description WHERE category_id = " . $cid . ";"; $query = $this->db->query($qq); $my_category_description = array(); foreach ($query as $qwerty) { $j=0; foreach ($qwerty as $qqqq) { foreach ($qqqq as $mkey => $mval) { //echo '<h1>' . $j . ' - ' . $mkey .'-'. $mval . '</h1>'; if ($mval == '') { $my_category_description[$j][$mkey] = 'NULL'; } else { $my_category_description[$j][$mkey] = $mval; } } $j++; } } //echo '<h1><font color=red>'.$my_category_description[0]['name'] . '</font></h1>'; // 3-rd QUERY ('category_to_store' DB) $qq = "SELECT * FROM category_to_store WHERE category_id = " . $cid . ";"; $query = $this->db->query($qq); $my_category_to_store = array (); foreach ($query as $qwerty) { foreach ($qwerty as $mkey => $mval) { $my_category_to_store[$mkey] = $mval; } } echo '<h1><font color=green>store_id = ' . $my_category_to_store['store_id'] . 'cat id = ' . $my_category_to_store['category_id'] . '</font></h1>'; // READ QUERIES ENDED // READ QUERIES ENDED // READ QUERIES ENDED // WRITING TO DATABASE!!! // WRITING TO DATABASE!!! // WRITING TO DATABASE!!! //INS 1st ARRAY $qs = ', '; $qq_values = $last_cid . $qs . $my_category['image'] . $qs . $my_category['parent_id'] . $qs . $my_category['top'] . $qs . $my_category['column'] . $qs . $my_category['sort_order'] . $qs . $my_category['status'] . ', \'' . $my_category['date_added'] . '\', \'' . $my_category['date_modified'] . '\''; echo '<h1>' . $qq_values . '</h1>'; echo $qq = 'INSERT INTO category (`category_id` ,`image` ,`parent_id` ,`top` ,`column` ,`sort_order` ,`status` ,`date_added` ,`date_modified`) VALUES (' . $qq_values . ');'; $query = $this->db->query($qq); //INS 2nd ARRAY $li = 0; $qs = ', '; while ($li < sizeof($my_category_description)) { echo '<br><br>' . $qq_values = $last_cid . $qs . $my_category_description[$li]['language_id'] . ', \'' . $my_category_description[$li]['name'] . '\', \'' . $my_category_description[$li]['description'] . '\', \'' . $my_category_description[$li]['meta_description'] . '\', \'' . $my_category_description[$li]['meta_keyword'] . '\', \'' . $my_category_description[$li]['seo_title'] . '\', \'' . $my_category_description[$li]['seo_h1'] . '\''; echo '<br><br>' . $qq = 'INSERT INTO category_description VALUES (' . $qq_values . ');'; $query = $this->db->query($qq); $li++; } //INS 3rd ARRAY echo '<br><br><font color=orange>' . $qq = 'INSERT INTO category_to_store VALUES (' . $last_cid . ', ' . $my_category_to_store['store_id'] . ');'; echo '</font>'; $query = $this->db->query($qq); // WRITING COMPLETED!!! // WRITING COMPLETED!!! // WRITING COMPLETED!!! } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Теперь ищем следующие две строки (у меня они вышли (после добавления кода выше) на 199 и 200 строках: $this->data['insert'] = $this->url->link('catalog/category/insert', 'token=' . $this->session->data['token'], 'SSL'); $this->data['delete'] = $this->url->link('catalog/category/delete', 'token=' . $this->session->data['token'], 'SSL'); ПЕРЕД ними дописываем: $this->data['copy'] = $this->url->link('catalog/category/my_copy', 'token=' . $this->session->data['token'], 'SSL'); /// вмешательство в файл category.php закончили 2) Теперь открываем файл /admin/view/template/catalog/category_list.tpl В нем ищем код: <div class="buttons"> <a onclick="location = '<?php echo $insert; ?>'" class="button"><?php echo $button_insert; ?></a> <a onclick="$('#form').submit();" class="button"><?php echo $button_delete; ?></a></div> </div> и дополняем его чтобы вышло так: <div class="buttons"> <a onclick="$('#form').attr('action', '<?php echo $copy; ?>'); $('#form').submit();" class="button"><?php echo 'Copy Category'; ?></a> <a onclick="location = '<?php echo $insert; ?>'" class="button"><?php echo $button_insert; ?></a> <a onclick="$('#form').submit();" class="button"><?php echo $button_delete; ?></a></div> </div> Г О Т О В О! Еще раз повторюсь - ВСЁ на ваш страх и риск, скрипт работает напрямую с БД, поэтому, чтобы в мой адрес не было мата, делайте бэкапы! -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
пока попробуй как работает, а объясню когда копирование категорий доделаю)) да, и не забывай делать бэкапы ВСЕГО, что меняешь)) -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
Итак, приступим! Перед той строкой, которую недавно впаивали (в order.php) $my_order_info = $this->model_sale_order->getOrder($result['order_id']); Вставляй вот ЭТО: //////////////////////////////////////////////////////////// $my_product = array(); $my_products = $this->model_sale_order->getOrderProducts($result['order_id']); foreach ($my_products as $product) { $my_product[] = array( 'order_product_id' => $product['order_product_id'], 'product_id' => $product['product_id'], 'name' => $product['name'], 'model' => $product['model'], 'quantity' => $product['quantity'], ); } //////////////////////////////////////////////////////////// Далее, переделай массив, который редактировали недавно (чуть ниже): $this->data['orders'][] = array( 'order_id' => $result['order_id'], 'shipping_address' => $my_order_info['shipping_address_1'], 'products_ordered' => $my_product, // На этот раз добавляем вот этот параметр 'customer' => $result['customer'], 'status' => $result['status'], 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'date_modified' => date($this->language->get('date_format_short'), strtotime($result['date_modified'])), 'selected' => isset($this->request->post['selected']) && in_array($result['order_id'], $this->request->post['selected']), 'action' => $action ); Теперь переходим к order_list.tpl: там дописывай старые вмешательства наши, чтоб было как тут: <!--////////////////////--> <td class="left"><?php echo 'ADDRESS'; ?></td> <td class="left"><?php echo 'PRODUCTS'; ?></td> <!--////////////////////--> <!--////////////////////--> <td /> <td /> <!--////////////////////--> <!--////////////////////--> <td><?php echo $order['shipping_address']; ?></td> <td> <?php $i=0; $my_prods = $order['products_ordered']; while ($i < sizeof($my_prods)) { echo '>> '. $my_prods[$i]['quantity'] . ' x ' . $my_prods[$i]['name'] . '<br>'; $i++; }?> </td> <!--////////////////////--> Соответственно отображение можешь менять по своему желанию, я поставил так ( ">> кол-во_товара х наименование_товара"): >> 1 х Товар_1 >> 5 x Товар_2 Да, и массивчик с запасом, можно посмотреть модель товара, например. -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
только не $comment_array , а $order['comment_array'] -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
спасибо=) да, по идее верно ааха то подскажет какая переменная товар ордера?? о какой именно переменной идет речь? поточнее опиши пожалуйста) -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
1) что запихивается в $my_order_info смотри в файле orders.php начиная примерно с 1540-й строки. там такая же переменная фигурирует как $order_info. Что в ней, соответственно, видно из того, что из нее извлекают ($order_info['то_что_извлекается']) 2) Да, то же самое (я не смотрел, что именно ты извлекаешь этим запросом, но СУТЬ такая же), ТОЛЬКО: твой прямой запрос к БД нарушает: а) принципы ООП, б) безопасность, в) тебе придется (ввиду нарушения пункта "а" еще писать код для подключения к БД с вводом логина и пароля (именно поэтому нарушается пункт "б") 3) вся инфа ОБ УЖЕ СДЕЛАННОМ заказе. соответственно никакой корзины нет и быть не может, товар из корзины перекочевал в статус товара в заказе. 4) в какой таблице базы - не знаю, поищи сам... 5) $this - ООПшная отсылка к методу, доступному в данном скрипте т.е. $this->model_sale_order->getOrder($result['order_id']) вызывает функцию getOrder(), $this->data['orders'][] = array( создает массив $orders, который будет доступен из скрипта (шаблона) http://php.net/manual/en/language.oop5.basic.php -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
незачто) -> - это из области ООП, я понятия не имею как объяснить что она делает человеческим языком, но суть вот в чем: этой строкой мы создаем переменную $my_order_info, в которую помещается вся инфа о заказе. Т.е. ВООБЩЕ ВСЯ. а этой фигней ("->") мы вызываем нужную функцию (точнее указываем путь через класс). => - этим имени в списке присваивается значение. т.е. в обычном массиве значения идут подряд и обращаться к ним надо по индексам (my_array[0] например), а в именованном массиве обращение происходит по именам( my_named_array['first_index'] например). соответственно, когда объявляем обычный массив достаточно просто перечислить значения, а интерпретатор автоматически присвоит их индексам от нуля и далее, а для именованного массива необходимо указывать названия (имена) индексов simple_array[] = array ( abc, def, ghi, jkl); named_array[] = array ( 'first_index' => 'abc', 'second_index' => 'def' ); как-то так... а, вспомнил, эти массивы еще называют ассоциативными, а в PERL'e - Хэшами) -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
Первым делом открывай /admin/controller/sale/order.php Там надо добавить пару строк: if (strtotime($result['date_added']) > strtotime('-' . (int)$this->config->get('config_order_edit') . ' day')) { $action[] = array( 'text' => $this->language->get('text_edit'), 'href' => $this->url->link('sale/order/update', 'token=' . $this->session->data['token'] . '&order_id=' . $result['order_id'] . $url, 'SSL') ); } // Вставляем эту строку: $my_order_info = $this->model_sale_order->getOrder($result['order_id']); $this->data['orders'][] = array( 'order_id' => $result['order_id'], 'shipping_address' => $my_order_info['shipping_address_1'], // Добавляем этот параметр 'customer' => $result['customer'], 'status' => $result['status'], 'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'date_modified' => date($this->language->get('date_format_short'), strtotime($result['date_modified'])), 'selected' => isset($this->request->post['selected']) && in_array($result['order_id'], $this->request->post['selected']), 'action' => $action ); } Далее лезем в шаблон: /admin/view/template/sale/order_list.tpl Там добавляем следующие строки: <td class="right"><?php if ($sort == 'o.order_id') { ?> <a href="<?php echo $sort_order; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_order_id; ?></a> <?php } else { ?> <a href="<?php echo $sort_order; ?>"><?php echo $column_order_id; ?></a> <?php } ?></td> <!--//////////////////// Вставляем эту строку (1-е вмешательство):--> <td class="left"><?php echo 'ADDRESS'; ?></td> <!--////////////////////--> <td class="left"><?php if ($sort == 'customer') { ?> <a href="<?php echo $sort_customer; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_customer; ?></a> <?php } else { ?> <a href="<?php echo $sort_customer; ?>"><?php echo $column_customer; ?></a> <?php } ?></td> <tr class="filter"> <td></td> <td align="right"><input type="text" name="filter_order_id" value="<?php echo $filter_order_id; ?>" size="4" style="text-align: right;" /></td> <!--//////////////////// Вставляем строку ниже (2-е вмешательство):--> <td /> <!--////////////////////--> <td><input type="text" name="filter_customer" value="<?php echo $filter_customer; ?>" /></td> <td class="right"><?php echo $order['order_id']; ?></td> <!--//////////////////// Последняя строка, которую добавляем (3-е вмешательство):--> <td><?php echo $order['shipping_address']; ?></td> <!--////////////////////--> <td class="left"><?php echo $order['customer']; ?></td>