Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Аналог модуля News Page


Recommended Posts

Добрый день, уважаемые! Не подскажите, имеется ли какой-нибудь аналог модуля News Page. Проблема вся в том, что на сайте уже стоит модуль News Page...и продублировать его никак не получается - проклятая ошибка связанная с VQMOD (даже связываться с этим не хочется), а очень нужен модуль для создания обзоров, статеек. Будьте добры, посоветуйте что-нибудь из этого разряда. Заранее спасибо.

Версия ocStore 0.2.0.

Надіслати
Поділитися на інших сайтах


мои труды оказались напрасными. жаль..

тем более, что клон у меня всё же работает

Нет, твои труды не оказались напрасными...после изучения прикрепленных тобою файлов пришло понимание того, как правильно нужно дублировать модули. Так что спасибо тебе, ты мне очень помог :)

И кстати, если бы не этот vqmod (а темы в форуме по нему просто мертвые!!!), то я бы с радостью поюзал дублированный модуль. Проблема-та вся в том, что мне нужно выводить этот модуль в позиции "Главная", а ИМЕННО В НЕЙ система выдает ошибку связанную с vqmod. Пробовал удалять его - хз как это сделать, т.к. там жестко все привязано друг к другу. А выводить статьи и обзоры в позициях "Слева" и "Справо" мне не имеет смысла. Вот в чем беда...

Надіслати
Поділитися на інших сайтах


Собственно, имеются ли какие-нибудь другие модули для ведения новостей/статей на сайте под управлением ocStore 0.2.0? Находил один, назывался кажись Blog News OpenCart, но это тоже не вариант...никакого функционала, ничего...прям хоть бери и покупай здесь :)

Надіслати
Поділитися на інших сайтах


Добрый день, уважаемые! Не подскажите, имеется ли какой-нибудь аналог модуля News Page. Проблема вся в том, что на сайте уже стоит модуль News Page...и продублировать его никак не получается - проклятая ошибка связанная с VQMOD (даже связываться с этим не хочется)

а что с VQMOD-ом не так? что за ошибка?

если не ставится с ним, то можно взять файлик xml VQMOD-а и пошагово самому все заменить вручную. при условии, что у других этот VQMOD конечно работает, т.е. указания в нем "что-на-что-заменить" прописаны правильно.

ничего там сложного быть не должно, на первый взгляд. если текущий модуль News Page подходит.

А эти не подойдут?

news148.zip

news148.zip

Надіслати
Поділитися на інших сайтах


а что с VQMOD-ом не так? что за ошибка?

Как я уже писал ошибка появляется только тогда когда ставлю дублированный модуль в позицию "Главная".

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

Вот такая фигня выходит - не знаю как бороться с этим.

если не ставится с ним, то можно взять файлик xml VQMOD-а и пошагово самому все заменить вручную. при условии, что у других этот VQMOD конечно работает

У freelancer'а, который сделал дубляж модуля VQMOD не установлен и у него оригинал и дубляж нормально работают. Честно говоря совершенно не хочется связываться с этим VQMOD...

А эти не подойдут?

Это и есть модуль NewsPage...такой же как и у меня стоит. Именно ему нужно альтернативу искать.

Надіслати
Поділитися на інших сайтах


У freelancer'а, который сделал дубляж модуля VQMOD не установлен и у него оригинал и дубляж нормально работают. Честно говоря совершенно не хочется связываться с этим VQMOD...

да в тему ту загляни, дело-то не в нем..

Надіслати
Поділитися на інших сайтах

ищет, но не находит файл news2_home.tpl

так переименуй

catalog\view\theme\default\template\module\news_home2. tpl в news2_home.tpl

Блин! А я и не гляжу в ту тему...Нечеловеческое спасибо тебе, freelancer ! Ты просто красавчик! :)

Раз уж тема идет об этом модуле, то не буду открывать новую тему и задам еще один вопрос (кстати из той же темы) - возможно ли прикрутить к новости (допустим в левой части) небольшую превьюшку-тизер?

Где-то уже поднимали данного рода вопрос и вроде как был ответ что надо почти полностью перелапатывать весь модуль и что это неактуально больше... так ли это на самом деле???

Надіслати
Поділитися на інших сайтах


не пойму, поясни на примере

Далеко ходить не надо - стоит взглянуть на hi-tech.mail.ru , т.е. рядом c каждой новостью небольшая картиночка - превьюшка, которая задается в админке сайта.

Надіслати
Поділитися на інших сайтах


Чем-то похоже кстати на модуль "рекомендуемые" или "специальные"...тоже выводится картиночка. Попробую тогда поизучать структуру файлов, а то я не особо силен в php...В принципе вещь нужная, т.к. улучшает внешнее восприятие сайта.

Надіслати
Поділитися на інших сайтах


1. в базу добавить поле image

2. в админке реализовать загрузку изображения как это сделано для товара или категории

3. поправить вывод новостей с учетом preview

Надіслати
Поділитися на інших сайтах

1. в базу добавить поле image

2. в админке реализовать загрузку изображения как это сделано для товара или категории

3. поправить вывод новостей с учетом preview

Ага, попробую сделать...отпишусь.

Надіслати
Поділитися на інших сайтах


В общем как я сделал:

/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-ю картинку и нажимаю на "Сохранить", то картинка не сохраняется...

Где я накосячил???

-----------------------------------------------------------------------------------------

Код поправил - теперь все работает.

post-14066-0-37650900-1323759871_thumb.png

Змінено користувачем GoodSpeed
Надіслати
Поділитися на інших сайтах


Вставляю:

if (isset($data['image2'])) {
			$this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'");
		}
SET image2

if (isset($data['image2'])) {
			$this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'");
		}
SET image2

            <td><?php echo $entry_image2; ?></td>
            <td valign="top"><input type="hidden" name="image" value="<?php echo $image; ?>" id="image" />
              <img src="<?php echo $preview; ?>" alt="" id="preview2" class="image" onclick="image_upload2('image', 'preview2');" /></td>
          </tr>
name="image2" id="image2"

echo $preview2;

image_upload2('image2', 'preview2')

будьте внимательнее

Надіслати
Поділитися на інших сайтах

Вставляю:

if (isset($data['image2'])) {

$this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'");

}

SET image2

if (isset($data['image2'])) {

$this->db->query("UPDATE " . DB_PREFIX . "news2 SET image = '" . $this->db->escape($data['image2']) . "' WHERE news_id = '" . (int)$news_id . "'");

}

SET image2

На самом деле это было правильно у меня, т.к. я вручную сюда код прописывал, а не копипастил из файла - поэтому и ошибся.

А что касается

name="image2" id="image2"
 echo $preview2;
 image_upload2('image2', 'preview2')

так тут я действительно недосмотрел. Спасибо. Пошел дальше работать с выводом превьюхи.

Надіслати
Поділитися на інших сайтах


Происходит какая-то хренотень...

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!

Вот примерно такие проблемы...

post-14066-0-19727200-1323767486_thumb.png

post-14066-0-41872500-1323767542_thumb.png

post-14066-0-10431800-1323767979_thumb.png

post-14066-0-25069400-1323768376_thumb.png

Надіслати
Поділитися на інших сайтах


Ну так что, друзья? Кто-нибудь чем-нибудь поможет?

Переформулирую вопрос: Как в данном модуле сделать картинку, которая задается во вкладке "Данные" любой новости, превьюхой к краткому анонсу новости. Т.е. ставим модуль в позицию "Главная" (за это отвечает файлик /catalog/view/theme/default/template/module/news_home.tpl) и к каждой новости должна прикручиваться небольшая картиночка (как раз та, которую задаем в админке).

P.S. Прикладываю скрин

post-14066-0-87314400-1323851694_thumb.png

Надіслати
Поділитися на інших сайтах


покажите что получилось

Я капец замутил тут в теме...Давайте лучше так...Пойдем другим способом, который на 90% облегчает решение моей задачи...Есть вариант ВООБЩЕ не создавать доп/полей в БД, дублировать в админке код и так далее...

ДАНО:

В каждой вкладке "Данные" конкретной новости имеется пункт "Изображение (Кликните по картинке для ее замены)". Эта картинка отображается справа от новости на странице детальной информации:

post-14066-0-90051100-1323857405_thumb.png

ЧТО СДЕЛАТЬ:

Необходимо выцепить эту картинку и вывести ее на страницу анонса новости:

post-14066-0-82773200-1323858242_thumb.png

Путь к файлу, отвечающего за позицию "Главная":

/catalog/view/theme/cofran/template/module/news2_home.tpl

P.S. На всякий случай прикрепляю файлы своего модуля статей (новостей)

news2_my.zip

Змінено користувачем GoodSpeed
Надіслати
Поділитися на інших сайтах


В каждой вкладке "Данные" конкретной новости имеется пункт "Изображение (Кликните по картинке для ее замены)". Эта картинка отображается справа от новости на странице детальной информации:

т.е. картинка уже есть, её нужно только вывести? (я не в курсе этого модуля)
Надіслати
Поділитися на інших сайтах

т.е. картинка уже есть, её нужно только вывести? (я не в курсе этого модуля)

Да, только и всего...она выводится, но не туда, куда надо...надо чтобы выводилась в файл

/catalog/view/theme/cofran/template/module/news2_home.tpl

а выводится в

/catalog/view/theme/cofran/template/information/news2.tpl

Так ты ведь дублировал этот модуль...или ты не лез в "глубины" ?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.