How to place Intro Image above article title in blog view Topic is solved

Everything to do with Joomla! 3.x templates and templating.

Moderator: General Support Moderators

Forum rules
Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting, this means YOU.
Forum Post Assistant - If you are serious about wanting help, you will use this tool to help you post.
Windows Defender SmartScreen Issues <-- please read this if using Windows 10.
Locked
User avatar
boss_3
Joomla! Intern
Joomla! Intern
Posts: 80
Joined: Fri Apr 16, 2010 6:50 am
Location: Cairo, Egypt
Contact:

How to place Intro Image above article title in blog view

Post by boss_3 » Tue Oct 30, 2018 9:26 am

Could someone please help me with this code:
I want to place intro image above article title like this:
intro image
article title
intro text
i use t3-blank template
It is from html/com_content/category/blog_item.php

Code: Select all

<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_content
 *
 * @copyright   Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

// Create a shortcut for params.
$params = $this->item->params;
JHtml::addIncludePath(JPATH_COMPONENT . '/helpers/html');
$canEdit = $this->item->params->get('access-edit');
$info    = $params->get('info_block_position', 0);

// Check if associations are implemented. If they are, define the parameter.
$assocParam = (JLanguageAssociations::isEnabled() && $params->get('show_associations'));

?>
<?php if ($this->item->state == 0 || strtotime($this->item->publish_up) > strtotime(JFactory::getDate())
	|| ((strtotime($this->item->publish_down) < strtotime(JFactory::getDate())) && $this->item->publish_down != JFactory::getDbo()->getNullDate())) : ?>
	<div class="system-unpublished">
<?php endif; ?>
<?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?>
<?php echo JLayoutHelper::render('joomla.content.blog_style_default_item_title', $this->item); ?>

<?php if ($canEdit || $params->get('show_print_icon') || $params->get('show_email_icon')) : ?>
	<?php echo JLayoutHelper::render('joomla.content.icons', array('params' => $params, 'item' => $this->item, 'print' => false)); ?>
<?php endif; ?>
<?php // Todo Not that elegant would be nice to group the params ?>
<?php $useDefList = ($params->get('show_modify_date') || $params->get('show_publish_date') || $params->get('show_create_date')
	|| $params->get('show_hits') || $params->get('show_category') || $params->get('show_parent_category') || $params->get('show_author') || $assocParam); ?>

<?php if ($useDefList && ($info == 0 || $info == 2)) : ?>
	<?php // Todo: for Joomla4 joomla.content.info_block.block can be changed to joomla.content.info_block ?>
	<?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'above')); ?>
<?php endif; ?>
<?php if ($info == 0 && $params->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?>
	<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>
<?php endif; ?>

<?php if (!$params->get('show_intro')) : ?>
	<?php // Content is generated by content plugin event "onContentAfterTitle" ?>
	<?php echo $this->item->event->afterDisplayTitle; ?>
<?php endif; ?>

<?php // Content is generated by content plugin event "onContentBeforeDisplay" ?>
<?php echo $this->item->event->beforeDisplayContent; ?>

<?php echo $this->item->introtext; ?>

<?php if ($info == 1 || $info == 2) : ?>
	<?php if ($useDefList) : ?>
		<?php // Todo: for Joomla4 joomla.content.info_block.block can be changed to joomla.content.info_block ?>
		<?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'below')); ?>
	<?php endif; ?>
	<?php if ($params->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?>
		<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>
	<?php endif; ?>
<?php endif; ?>

<?php if ($params->get('show_readmore') && $this->item->readmore) :
	if ($params->get('access-view')) :
		$link = JRoute::_(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid, $this->item->language));
	else :
		$menu = JFactory::getApplication()->getMenu();
		$active = $menu->getActive();
		$itemId = $active->id;
		$link = new JUri(JRoute::_('index.php?option=com_users&view=login&Itemid=' . $itemId, false));
		$link->setVar('return', base64_encode(ContentHelperRoute::getArticleRoute($this->item->slug, $this->item->catid, $this->item->language)));
	endif; ?>

	<?php echo JLayoutHelper::render('joomla.content.readmore', array('item' => $this->item, 'params' => $params, 'link' => $link)); ?>

<?php endif; ?>

<?php if ($this->item->state == 0 || strtotime($this->item->publish_up) > strtotime(JFactory::getDate())
	|| ((strtotime($this->item->publish_down) < strtotime(JFactory::getDate())) && $this->item->publish_down != JFactory::getDbo()->getNullDate())) : ?>
</div>
<?php endif; ?>

<?php // Content is generated by content plugin event "onContentAfterDisplay" ?>
<?php echo $this->item->event->afterDisplayContent; ?>
Happy are those who dream dreams and are ready to pay the price to make them come true.
http://egyptfuntours.com

SharkyKZ
Joomla! Hero
Joomla! Hero
Posts: 2870
Joined: Fri Jul 05, 2013 10:35 am
Location: Parts Unknown

Re: How to place Intro Image above article title in blog view

Post by SharkyKZ » Tue Oct 30, 2018 9:43 am

The code is correct. What exactly is not working?

User avatar
boss_3
Joomla! Intern
Joomla! Intern
Posts: 80
Joined: Fri Apr 16, 2010 6:50 am
Location: Cairo, Egypt
Contact:

Re: How to place Intro Image above article title in blog view

Post by boss_3 » Tue Oct 30, 2018 9:45 am

Thank you for your reply.
Yes, this is the correct code from blog_item.php.
I want to place intro image above article title, and intro text below article title.
with this code the order now is:
article title
intro image
intro text.
How can i make it:
intro image
article title
intro text
?
Happy are those who dream dreams and are ready to pay the price to make them come true.
http://egyptfuntours.com

User avatar
boss_3
Joomla! Intern
Joomla! Intern
Posts: 80
Joined: Fri Apr 16, 2010 6:50 am
Location: Cairo, Egypt
Contact:

Re: How to place Intro Image above article title in blog view

Post by boss_3 » Tue Oct 30, 2018 9:47 am

It seems this part of code
<?php echo $this->item->introtext; ?>
controls both intro image and intro text as one part that can not be separated
Happy are those who dream dreams and are ready to pay the price to make them come true.
http://egyptfuntours.com

SharkyKZ
Joomla! Hero
Joomla! Hero
Posts: 2870
Joined: Fri Jul 05, 2013 10:35 am
Location: Parts Unknown

Re: How to place Intro Image above article title in blog view

Post by SharkyKZ » Tue Oct 30, 2018 9:53 am

The intro image is rendered with this:

Code: Select all

<?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?>
And in your code it already goes before the title:

Code: Select all

<?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?>
<?php echo JLayoutHelper::render('joomla.content.blog_style_default_item_title', $this->item); ?>
Perhaps your intro image isn't actually intro image but an image inside the article text?

User avatar
boss_3
Joomla! Intern
Joomla! Intern
Posts: 80
Joined: Fri Apr 16, 2010 6:50 am
Location: Cairo, Egypt
Contact:

Re: How to place Intro Image above article title in blog view

Post by boss_3 » Tue Oct 30, 2018 9:56 am

Perhaps your intro image isn't actually intro image but an image inside the article text?
You are completely right.
Do i have to remove this image inside the article and add it as an intro image?
That sounds like a solution, but it is too much work!
Can I achieve it with that image inside the article instead of placing intro images ?...
I think it is hard -in this case- to achieve.
Happy are those who dream dreams and are ready to pay the price to make them come true.
http://egyptfuntours.com

User avatar
boss_3
Joomla! Intern
Joomla! Intern
Posts: 80
Joined: Fri Apr 16, 2010 6:50 am
Location: Cairo, Egypt
Contact:

Re: How to place Intro Image above article title in blog view

Post by boss_3 » Tue Oct 30, 2018 10:16 am

This is solved for me, I will go through all my articles and change it the correct way.
Thank you so much SharkyKZ for your promote and efficient response.
So, solution is that image was inside the article which means it is part of the intro text.
Now, I will remove it and add intro image to make it appear above title as in the original code.
Happy are those who dream dreams and are ready to pay the price to make them come true.
http://egyptfuntours.com


Locked

Return to “Templates for Joomla! 3.x”