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

вывод фото в модуле Новости


DonDr

Recommended Posts

код модуля:

<?php if ($news) { ?>
<div class="box">
  <div class="box-heading"><?php echo $heading_title; ?></div>
  <div class="box-content">
    <?php foreach ($news as $news_story) { ?>
	  <div class="box-news">
   <h1><?php echo $news_info['title']; ?></h1>
  <!--<b><?php echo $news_story['date_added']; ?></b>: -->
  <h3><?php echo $news_story['title']; ?></h3>
  <?php echo $news_story['description']; ?></p>
	    <div><a href="<?php echo $news_story['href']; ?>"><?php echo $text_read_more; ?></a><br><br></div>
	  </div>
    <?php } ?>
  </div>
</div>
<?php } ?>

код отображения полной новости с фото:

<?php echo $header; ?><?php echo $column_left; ?><?php echo $column_right; ?>
<div id="content"><?php echo $content_top; ?>
  <div class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
    <?php } ?>
  </div>
 
  <?php if (isset($news_info)) { ?>
    <div class="news" <?php if ($image) { echo 'style="min-height: ' . $min_height . 'px;"'; } ?>>
	  <?php if ($image) { ?>
	    <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="fancybox"><img align="left" style="border: none; margin-left: 10px; padding: 10px; " src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a>
	  <?php } ?>
	  <?php echo $description; ?>
    </div>
    <div class="buttons">
	  <div class="right"><a onclick="location='<?php echo $news; ?>'" class="button"><span><?php echo $button_news; ?></span></a></div>
    </div>
  <?php } elseif (isset($news_data)) { ?>
    <?php foreach ($news_data as $news) { ?>
	  <div class="content">
	    <h3 style="margin-top: 5px;"><?php echo $news['title']; ?></h3>
	    <?php echo $news['description']; ?></p>
	    <p><b><?php echo $news['date_added']; ?></b> <a href="<?php echo $news['href']; ?>"><?php echo $text_read_more; ?></a></p>
	  </div>
    <?php } ?>
  <?php } ?>
  <?php echo $content_bottom; ?>
</div>
<?php echo $footer; ?>

задача добавить вывод фото и в модуле.

самостоятельно не получается сделать. может кто подскажет?

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


  • 2 weeks later...
  • 4 months later...

задача добавить вывод фото и в модуле.

самостоятельно не получается сделать. может кто подскажет?

файл \catalog\controller\module\news.php

после

$results = $this->model_fido_news->getNewsShorts($setting['limit']);

добавить

  $this->load->model('tool/image');

  if ($news_info['image']) {
   $this->data['image'] = TRUE;
  } else {
   $this->data['image'] = FALSE;
  }

после

'title'		=> $result['title'],

добавить

'image'		=> $this->model_tool_image->resize($result['image'], 70, 70),

файл \catalog\view\theme\{---ваша тема---}\template\module\news.tpl

в нужное вам место вставить

<?php if ($news_story['image']) { ?>
<div class="image"><a href="<?php echo $news_story['href']; ?>" title="<?php echo $news_story['title']; ?>" class=""><img src="<?php echo $news_story['image']; ?>" title="<?php echo $news_story['title']; ?>" /></a></div>
<?php } ?>

размеры превьюшки регулируются в строке $this->model_tool_image->resize($result['image'], 70, 70), где "70,70" - это длина и ширина в пикселах.

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

  • 5 months later...

http://drupal-site.ru/index.php?route=information/information&information_id=9 страница на которой показывается модуль новости, выводятся картинки. есть ещё страница "все новости" где картинки не выводятся http://drupal-site.ru/index.php?route=information/news 

 

код файла /controller/information/news.php

 

<?php
class ControllerInformationNews extends Controller {
	public function index() {
    	$this->load->language('information/news');
		$this->load->model('fido/news');

		$this->data['breadcrumbs'] = array();

		$this->data['breadcrumbs'][] = array(
			'href'      => $this->url->link('common/home'),
			'text'      => $this->language->get('text_home'),
			'separator' => FALSE
		);

		if (isset($this->request->get['news_id'])) {
			$news_id = $this->request->get['news_id'];
		} else {
			$news_id = 0;
		}

		$news_info = $this->model_fido_news->getNewsStory($news_id);

		if ($news_info) {
	  		$this->document->setTitle($news_info['title']);

			$this->data['breadcrumbs'][] = array(
				'href'      => $this->url->link('information/news'),
				'text'      => $this->language->get('heading_title'),
				'separator' => $this->language->get('text_separator')
			);

			$this->data['breadcrumbs'][] = array(
				'href'      => $this->url->link('information/news', 'news_id=' . $this->request->get['news_id']),
				'text'      => $news_info['title'],
				'separator' => $this->language->get('text_separator')
			);

     		$this->data['news_info'] = $news_info;

     		$this->data['heading_title'] = $news_info['title'];

			$this->document->setDescription($news_info['meta_description']);

			$this->data['description'] = html_entity_decode($news_info['description']);

			$this->load->model('tool/image');

			if ($news_info['image']) {
				$this->data['image'] = TRUE;
			} else {
				$this->data['image'] = FALSE;
			}

			$this->data['min_height'] = $this->config->get('news_thumb_height');

			$this->data['thumb'] = $this->model_tool_image->resize($news_info['image'], $this->config->get('news_thumb_width'), $this->config->get('news_thumb_height'));
			$this->data['popup'] = $this->model_tool_image->resize($news_info['image'], $this->config->get('news_popup_width'), $this->config->get('news_popup_height'));

     		$this->data['button_news'] = $this->language->get('button_news');

			$this->data['news'] = $this->url->link('information/news');

			if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/information/news.tpl')) {
				$this->template = $this->config->get('config_template') . '/template/information/news.tpl';
			} else {
				$this->template = 'default/template/information/news.tpl';
			}

			$this->children = array(
				'common/column_left',
				'common/column_right',
				'common/content_top',
				'common/content_bottom',
				'common/footer',
				'common/header'
			);

			$this->response->setOutput($this->render());
	  	} else {
	  		$news_data = $this->model_fido_news->getNews();

	  		if ($news_data) {
				foreach ($news_data as $result) {
				
				$cut_descr_symbols = $this->config->get('news_headline_chars');
				$descr_plaintext = strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'));
				if( mb_strlen($descr_plaintext, 'UTF-8') > $cut_descr_symbols )
				{
					$descr_plaintext = mb_substr($descr_plaintext, 0, $cut_descr_symbols, 'UTF-8') . ' …';
				}
				
					$this->data['news_data'][] = array(
					    'image'        => $result['image'],
						'title'        => $result['title'],
						'description' => $descr_plaintext,
						'href'         => $this->url->link('information/news', 'news_id=' . $result['news_id']),
						'date_added'   => date($this->language->get('date_format_short'), strtotime($result['date_added']))
					);
				}

				$this->document->setTitle($this->language->get('heading_title'));

				$this->document->breadcrumbs[] = array(
					'href'      => $this->url->link('information/news'),
					'text'      => $this->language->get('heading_title'),
					'separator' => $this->language->get('text_separator')
				);

				$this->data['heading_title'] = $this->language->get('heading_title');

				$this->data['text_read_more'] = $this->language->get('text_read_more');
				$this->data['text_date_added'] = $this->language->get('text_date_added');

				$this->data['button_continue'] = $this->language->get('button_continue');

				$this->data['continue'] = $this->url->link('common/home');

				if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/information/news.tpl')) {
					$this->template = $this->config->get('config_template') . '/template/information/news.tpl';
				} else {
					$this->template = 'default/template/information/news.tpl';
				}

				$this->children = array(
					'common/column_left',
					'common/column_right',
					'common/content_top',
					'common/content_bottom',
					'common/footer',
					'common/header'
				);

				$this->response->setOutput($this->render());
	    	} else {
		  		$this->document->setTitle($this->language->get('text_error'));

	     		$this->document->breadcrumbs[] = array(
	        		'href'      => $this->url->link('information/news'),
	        		'text'      => $this->language->get('text_error'),
	        		'separator' => $this->language->get('text_separator')
	     		);

				$this->data['heading_title'] = $this->language->get('text_error');

				$this->data['text_error'] = $this->language->get('text_error');

				$this->data['button_continue'] = $this->language->get('button_continue');

				$this->data['continue'] = $this->url->link('common/home');

				if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/error/not_found.tpl')) {
					$this->template = $this->config->get('config_template') . '/template/error/not_found.tpl';
				} else {
					$this->template = 'default/template/error/not_found.tpl';
				}

				$this->children = array(
					'common/column_left',
					'common/column_right',
					'common/content_top',
					'common/content_bottom',
					'common/footer',
					'common/header'
				);

				$this->response->setOutput($this->render());
		  	}
		}
	}
}
?>

если выводить в 93 строке картинку этим способом:

'image'		=> $this->model_tool_image->resize($result['image'], 70, 70),

грузится белая страница.

 

просто интересно, почему не работает этот код?

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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