GoodSpeed
Users-
Posts
96 -
Joined
-
Last visited
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by GoodSpeed
-
Методом проб о ошибок выяснил что код, отвечающий за вывод картинки + текст новости <?php if (isset($news_info)) { ?> <div class="middle" <?php if ($image) { echo 'style="min-height: ' . $min_height . 'px;"'; } ?>> <?php if ($image) { ?> <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="thickbox"><img align="right" style="border: none; margin-left: 10px;" src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a> <?php } ?> <?php echo $description; ?> </div> <div class="buttons"> <table> <tr> <td align="right"><a onclick="location='<?php echo str_replace('&', '&', $news); ?>'" class="button"><span><?php echo $button_news; ?></span></a></td> </tr> </table> </div> <?php } Т.е. за вывод картинки отвечает код: <?php if ($image) { ?> <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="thickbox"><img align="right" style="border: none; margin-left: 10px;" src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a> <?php } ?> Пробую его запихать в файл /catalog/view/theme/cofran/template/module/news2_home.tpl он мне выдает ошибку: Notice: Undefined variable: image in /usr/home/hosting/wt1000862/htdocs2/catalog/view/theme/cofran/template/module/news2_home.tpl on line 22 Может я куда-то не туда вставляю этот код и не инициализирую переменную image? Если так, то как это исправить? К сожалению не очень силен в PHP, так что не судите строго :)
-
Перезалил. У меня он нормально открывается...
-
Да, только и всего...она выводится, но не туда, куда надо...надо чтобы выводилась в файл /catalog/view/theme/cofran/template/module/news2_home.tpl а выводится в /catalog/view/theme/cofran/template/information/news2.tpl Так ты ведь дублировал этот модуль...или ты не лез в "глубины" ?
-
Я капец замутил тут в теме...Давайте лучше так...Пойдем другим способом, который на 90% облегчает решение моей задачи...Есть вариант ВООБЩЕ не создавать доп/полей в БД, дублировать в админке код и так далее... ДАНО: В каждой вкладке "Данные" конкретной новости имеется пункт "Изображение (Кликните по картинке для ее замены)". Эта картинка отображается справа от новости на странице детальной информации: ЧТО СДЕЛАТЬ: Необходимо выцепить эту картинку и вывести ее на страницу анонса новости: Путь к файлу, отвечающего за позицию "Главная": /catalog/view/theme/cofran/template/module/news2_home.tpl P.S. На всякий случай прикрепляю файлы своего модуля статей (новостей) news2_my.zip
-
Ну так что, друзья? Кто-нибудь чем-нибудь поможет? Переформулирую вопрос: Как в данном модуле сделать картинку, которая задается во вкладке "Данные" любой новости, превьюхой к краткому анонсу новости. Т.е. ставим модуль в позицию "Главная" (за это отвечает файлик /catalog/view/theme/default/template/module/news_home.tpl) и к каждой новости должна прикручиваться небольшая картиночка (как раз та, которую задаем в админке). P.S. Прикладываю скрин
-
Происходит какая-то хренотень... 1) Допустим 1-ая картинка - лого HTC, 2-ая - лого Apple. Пробую изменить 1-ую картинку на лого Canon - результат на втором аттаче. (1-ая картинка нормально изменяется, а вот 2-ая, которую не трогали поменялась на лого HTC). Какое-то странное смещение произошло... В чем мб проблема? 2) Идем на страницу детальной информации новостей: /catalog/view/theme/cofran/template/information/news2.tpl. Ищу код, который отвечает за вывод превьюхи: <?php if (isset($news_info)) { ?> <div class="middle" <?php if ($image) { echo 'style="min-height: ' . $min_height . 'px;"'; } ?>> <?php if ($image) { ?> <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="thickbox"><img align="right" style="border: none; margin-left: 10px;" src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a> <?php } ?> Таким образом вроде как должна отображаться картинка $image, а на сайте отображается $image2 - смотреть аттач №3. При этом если в коде поменять на $image -> $image2 , то все равно отображается $image2. Ничего понять не могу... 3) Иду в /catalog/view/theme/cofran/template/module/news2_home.tpl - отображение новостей на главной странице. Пробую прикрутить сюда превьюху. После: <h4 style="text-align:left; color:#000; margin:15px 0 15px 15px;"><?php echo $news_story['title']; ?></h4> Вставляю: <?php if (isset($news_info)) { ?> <div class="middle" <?php if ($image2) { echo 'style="min-height: ' . $min_height . 'px;"'; } ?>> <?php if ($image2) { ?> <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="thickbox"><img align="right" style="border: none; margin-left: 10px;" src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a> <?php } ?> <?php } ?> Иду на сайт - ничего не меняется - аттач №4! Вот примерно такие проблемы...
-
На самом деле это было правильно у меня, т.к. я вручную сюда код прописывал, а не копипастил из файла - поэтому и ошибся. А что касается name="image2" id="image2" echo $preview2; image_upload2('image2', 'preview2') так тут я действительно недосмотрел. Спасибо. Пошел дальше работать с выводом превьюхи.
-
В общем как я сделал: /admin/controller/module/news2.php После этого: if (isset($this->request->post['image'])) { $this->data['image'] = $this->request->post['image']; } elseif (isset($news_info)) { $this->data['image'] = $news_info['image']; } else { $this->data['image'] = ''; } Вставляю: if (isset($this->request->post['image2'])) { $this->data['image2'] = $this->request->post['image2']; } elseif (isset($news_info)) { $this->data['image2'] = $news_info['image2']; } else { $this->data['image2'] = ''; } Затем после: if (isset($news_info) && $news_info['image'] && file_exists(DIR_IMAGE . $news_info['image'])) { $this->data['preview'] = $this->model_tool_image->resize($news_info['image'], 100, 100); } else { $this->data['preview'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); } Вставляю: if (isset($news_info) && $news_info['image2'] && file_exists(DIR_IMAGE . $news_info['image2'])) { $this->data['preview2'] = $this->model_tool_image->resize($news_info['image2'], 100, 100); } else { $this->data['preview2'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); } /admin/model/fido/news2.php После этого: if (isset($data['image'])) { $this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image']) . "' WHERE news_id = '" . (int)$news_id . "'"); } Вставляю: if (isset($data['image2'])) { $this->db->query("UPDATE " . DB_PREFIX . "news2 SET image2 = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'"); } В функции public function editNews($news_id, $data) { после: if (isset($data['image'])) { $this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image']) . "' WHERE news_id = '" . (int)$news_id . "'"); } Вставляю: if (isset($data['image2'])) { $this->db->query("UPDATE " . DB_PREFIX . "news2 SET image2 = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'"); } В функции public function checkNews() { после: `image` varchar(255) collate utf8_general_ci default NULL, `image_size` int(1) NOT NULL default '0' Вставляю: `image2` varchar(255) collate utf8_general_ci default NULL, `image2_size` int(1) NOT NULL default '0' /admin/view/template/module/news2/form.tpl После: <tr> <td><?php echo $entry_image; ?></td> <td valign="top"><input type="hidden" name="image" value="<?php echo $image; ?>" id="image" /> <img src="<?php echo $preview; ?>" alt="" id="preview" class="image" onclick="image_upload('image', 'preview');" /></td> </tr> Вставляем: <tr> <td><?php echo $entry_image2; ?></td> <td valign="top"><input type="hidden" name="image2" value="<?php echo $image; ?>" id="image2" /> <img src="<?php echo $preview2; ?>" alt="" id="preview2" class="image" onclick="image_upload2('image2', 'preview2');" /></td> </tr> Далее дублирую javascript-функцию: <script type="text/javascript"><!-- function image_upload2(field, preview2) { $('#content').prepend('<div id="dialog" style="padding: 3px 0px 0px 0px;"><iframe src="index.php?route=common/filemanager&field=' + encodeURIComponent(field) + '&token=<?php echo $token; ?>" style="padding:0; margin: 0; display: block; width: 100%; height: 100%;" frameborder="no" scrolling="auto"></iframe></div>'); $('#dialog').dialog({ title: '<?php echo $text_image_manager; ?>', close: function (event, ui) { if ($('#' + field).attr('value')) { $.ajax({ url: 'index.php?route=common/filemanager/image&token=<?php echo $token; ?>', type: 'POST', data: 'image=' + encodeURIComponent($('#' + field).attr('value')), dataType: 'text', success: function(data) { $('#' + preview2).replaceWith('<img src="' + data + '" alt="" id="' + preview2 + '" style="border: 1px solid #EEEEEE;" />'); } }); } }, bgiframe: false, width: 800, height: 400, resizable: false, modal: false }); }; //--></script> После этого выполняю запрос в БД: ALTER TABLE `oc_news2` ADD `image2` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL AFTER `image` ; ALTER TABLE `oc_news2` ADD FULLTEXT ( `image2` ); и ALTER TABLE `oc_news2` ADD `image2_size` INT( 1 ) NOT NULL DEFAULT '0' AFTER `image_size` ; Далее захожу в "Модули-Статьи&Обзоры-Данные-Выбираю новость-Данные" и наблюдаю следующую картину (в аттаче) Таким образом имею 2 одинаковые картинки... При этом если изменяю 2-ю картинку и нажимаю на "Сохранить", то картинка не сохраняется... Где я накосячил??? ----------------------------------------------------------------------------------------- Код поправил - теперь все работает.
-
Ага, попробую сделать...отпишусь.
-
Пока разобраться не получается :( Подкиньте кто-нибудь какие-нибудь наводки как можно реализовать превьюхи к новости...
-
Чем-то похоже кстати на модуль "рекомендуемые" или "специальные"...тоже выводится картиночка. Попробую тогда поизучать структуру файлов, а то я не особо силен в php...В принципе вещь нужная, т.к. улучшает внешнее восприятие сайта.
-
Далеко ходить не надо - стоит взглянуть на hi-tech.mail.ru , т.е. рядом c каждой новостью небольшая картиночка - превьюшка, которая задается в админке сайта.
-
Блин! А я и не гляжу в ту тему...Нечеловеческое спасибо тебе, freelancer ! Ты просто красавчик! :) Раз уж тема идет об этом модуле, то не буду открывать новую тему и задам еще один вопрос (кстати из той же темы) - возможно ли прикрутить к новости (допустим в левой части) небольшую превьюшку-тизер? Где-то уже поднимали данного рода вопрос и вроде как был ответ что надо почти полностью перелапатывать весь модуль и что это неактуально больше... так ли это на самом деле???
-
Как я уже писал ошибка появляется только тогда когда ставлю дублированный модуль в позицию "Главная". Warning: sha1_file(/usr/home/hosting/wt1000862/htdocs2/catalog/view/theme/default/template/module/news2_home.tpl) [function.sha1-file]: failed to open stream: No such file or directory in /usr/home/hosting/wt1000862/htdocs2/vqmod/vqmod.php on line 482 Warning: file_get_contents(/usr/home/hosting/wt1000862/htdocs2/catalog/view/theme/default/template/module/news2_home.tpl) [function.file-get-contents]: failed to open stream: No such file or directory in /usr/home/hosting/wt1000862/htdocs2/vqmod/vqmod.php on line 483 Вот такая фигня выходит - не знаю как бороться с этим. У freelancer'а, который сделал дубляж модуля VQMOD не установлен и у него оригинал и дубляж нормально работают. Честно говоря совершенно не хочется связываться с этим VQMOD... Это и есть модуль NewsPage...такой же как и у меня стоит. Именно ему нужно альтернативу искать.
-
Собственно, имеются ли какие-нибудь другие модули для ведения новостей/статей на сайте под управлением ocStore 0.2.0? Находил один, назывался кажись Blog News OpenCart, но это тоже не вариант...никакого функционала, ничего...прям хоть бери и покупай здесь :)
-
Нет, твои труды не оказались напрасными...после изучения прикрепленных тобою файлов пришло понимание того, как правильно нужно дублировать модули. Так что спасибо тебе, ты мне очень помог :) И кстати, если бы не этот vqmod (а темы в форуме по нему просто мертвые!!!), то я бы с радостью поюзал дублированный модуль. Проблема-та вся в том, что мне нужно выводить этот модуль в позиции "Главная", а ИМЕННО В НЕЙ система выдает ошибку связанную с vqmod. Пробовал удалять его - хз как это сделать, т.к. там жестко все привязано друг к другу. А выводить статьи и обзоры в позициях "Слева" и "Справо" мне не имеет смысла. Вот в чем беда...
-
Добрый день, уважаемые! Не подскажите, имеется ли какой-нибудь аналог модуля News Page. Проблема вся в том, что на сайте уже стоит модуль News Page...и продублировать его никак не получается - проклятая ошибка связанная с VQMOD (даже связываться с этим не хочется), а очень нужен модуль для создания обзоров, статеек. Будьте добры, посоветуйте что-нибудь из этого разряда. Заранее спасибо. Версия ocStore 0.2.0.
-
Уважаемые знатоки VQMOD...в общем я сделал дублирование модуля NEWS PAGE (1-ый у меня для новостей, 2-ой для написание статей и обзоров), после чего при включении модуля выдается ошибка следующего характера: Warning: sha1_file(/usr/home/hosting/wt1000862/htdocs2/catalog/view/theme/default/template/module/news2_home.tpl) [function.sha1-file]: failed to open stream: No such file or directory in /usr/home/hosting/wt1000862/htdocs2/vqmod/vqmod.php on line 482Warning: file_get_contents(/usr/home/hosting/wt1000862/htdocs2/catalog/view/theme/default/template/module/news2_home.tpl) [function.file-get-contents]: failed to open stream: No such file or directory in /usr/home/hosting/wt1000862/htdocs2/vqmod/vqmod.php on line 483 Важно то, что когда расположение модуля "Слева" или "Справа", модуль работает. Как только модуль ставлю на "Главная", так сразу появляется эта ошибка. Прошу помочь разобраться в этой проблеме...
-
кстати, как можно прикрутить к новости (допустим в левой части) небольшую превьюшку? Достаточно полезный вариант будет.
-
Проблема решена! Для работы скрипта необходимо только 1 раз прописывать id-шник, а я его прописал 2 раза :) нелепо так получилось в общем...
-
РЕШЕНО!
-
Ребят, а вот тут такая ситуация...нужно разместить данную фишку в правой части сайта в модуле HTML Module. Вставил картинку, присвоил ей id="contact-form"...но при нажатии на картинку ничего не происходит...:( Кто-нить сталкивался с этой проблемой? Можете что-нибудь посоветовать? Или этот модуль работает только в header ?
-
Создание страниц вида /index.php?route=information/TEXT
GoodSpeed replied to GoodSpeed's topic in Загальні питання
Данная проблема решается примерно так (создадим страничку вида /index.php?route=information/contact2). Версия движка ocStore 0.2.0. Все манипуляции производились на шаблоне cofran...так что у кого стоит другой шаблон - не обесуйте :) Хотя там не особо сильные различия - если вы шарите в HTML, то для вас не составит труда переделать под свой шаблон :) P.S. Мне необходимо было создать страницу с еще одной контактной формой, помимо уже существующего раздела "Контакты". Итак, начнем! 1) Идем в /catalog/controller/information/ - копируем отсюда себе на комп файл contact.php. Переименовываем его в contact2.php. Заходим в него. Ищем class ControllerInformationContact extends Controller {меняем на class ControllerInformationContact2 extends Controller { Ищем $this->language->load('information/contact');меняем на $this->language->load('information/contact2'); Ищем 'href' => HTTP_SERVER . 'index.php?route=information/contact',меняем на 'href' => HTTP_SERVER . 'index.php?route=information/contact', Ищем $this->data['action'] = HTTP_SERVER . 'index.php?route=information/contact';меняем на $this->data['action'] = HTTP_SERVER . 'index.php?route=information/contact2'; Ищем if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/information/contact.tpl')) {меняем на if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/information/contact2.tpl')) { Ищем $this->template = $this->config->get('config_template') . '/template/information/contact.tpl';меняем на $this->template = $this->config->get('config_template') . '/template/information/contact2.tpl'; Ищем $this->language->load('information/contact');меняем на $this->language->load('information/contact2'); Ищем $this->document->breadcrumbs[] = array( 'href' => HTTP_SERVER . 'index.php?route=information/contact',меняем на $this->document->breadcrumbs[] = array( 'href' => HTTP_SERVER . 'index.php?route=information/contact2', 2) Закидываем модицифированный (и переименованный) файл обратно в папку /catalog/controller/information/. Контроллер готов. 3) Двигаемся дальше в /catalog/language/russian/information/. Копируем себе на комп файл contact.php и переименовываем в contact2.php. По желанию изменяем содержимое файлика (отвечает за языковое содержимое ошибок формы, наименований формы) и закидываем обновленный вариант обратно в /catalog/language/russian/information/. 4) Дальше занимаемся созданием страницы и изменением контента. Заходим в /catalog/view/theme/ВАША_ТЕМА/template/information/. Копируем себе на комп файл contact.tpl и сразу переименовываем в contact2.tpl. По желанию можно изменить содержимое файла (отвечает за внешнее оформление контента страницы. Можете изменить надписи или убрать некоторые поля). Далее закидываем обновленный файл обратно в /catalog/view/theme/ВАША_ТЕМА/template/information/. 5) Далее: пропишем ссылку на созданную нами страницу. Идем в /catalog/view/theme/ВАША_ТЕМА/template/common/ и копируем на комп файл header.tpl. В нем ищем ссылки на пункты главного меню - в моем случае: Ищу <li><a href="<?php echo $home; ?>" id="tab_home"><span><?php echo $text_home; ?></span></a></li> <li><a href="index.php?route=information/news"><span><?php echo $text_news; ?></span></a></li>после этого вставляю новую ссылку <li><a href="index.php?route=information/contact2"><span><?php echo $text_contact2; ?></span></a></li> Закидываем обновленный файл обратно в /catalog/view/theme/ВАША_ТЕМА/template/common/. Таким образом мы добавили в файл header.tpl новую ссылку. На данный момент текст ссылки содержим переменную <?php echo $text_contact2; ?> , которая никак нигде не описана. Опишем ее в следующем пункте.6) Завершающий этап: Идем в /catalog/language/russian/common/ и копируем файлик header.php. Заходим в него и прописываем в любое место $_['text_contact2'] = 'Контакты2';. Сохраняем. Закидываем обновленный файл обратно в /catalog/language/russian/common/.Идем в /catalog/controller/common/ и копируем на комп файл header.php. Заходим. Ищем $this->data['text_contact'] = $this->language->get('text_contact');После вставляем $this->data['text_contact2'] = $this->language->get('text_contact2'); Сохраняем. Закидываем обратно файл в /catalog/controller/common/ Проверяем. Делал параллельно - у меня все работает на ура. -
Создание страниц вида /index.php?route=information/TEXT
GoodSpeed posted a topic in Загальні питання
Каким способом можно создать страницы вида /index.php?route=information/TEXT1 , /index.php?route=information/TEXT2, /index.php?route=information/TEXT3 ? ПРОБЛЕМА РЕШЕНА! ТЕМУ МОЖНО ЗАКРЫТЬ! -
Ну так что, может кто-нибудь поможет в решении проблемы???