Keyword

[SOLVED] Print View Override

More
5 months 3 days ago #171264 by sohrab
sohrab replied the topic: Re: Print View Override
Ok . I studied them all. I didn't understand.
Would you please give me more direction like. A. do this.. B. do that...

Please Log in or Create an account to join the conversation.

More
5 months 3 days ago #171265 by sohrab
sohrab replied the topic: Re: Print View Override
the print layout for the joomla article is so neat and good. but for k2 is messy. but that's the only thing good about the joomla article system.

Please Log in or Create an account to join the conversation.

More
5 months 3 days ago #171266 by sohrab
sohrab replied the topic: Re: Print View Override
<?php if(JRequest::getInt('print')==1): ?>
<!-- Print button at the top of the print page only -->
<a class="itemPrintThisPage" rel="nofollow" href="#" onclick="window.print();return false;">
    <span><?php echo JText::_('K2_PRINT_THIS_PAGE'); ?></span>
</a>
<?php endif; ?>
The first line is for the button.
the second line to call for the print js action.
the third for the text.
How can I force it to open a custom php tempelate?
what should write? please guide me. I am not that adept in php but understand it.

Please Log in or Create an account to join the conversation.

More
5 months 3 days ago #171267 by sohrab
sohrab replied the topic: Re: Print View Override
Ok I also have this:
<?php if($this->item->params->get('itemPrintButton') && !JRequest::getInt('print')): ?>
			<!-- Print Button -->
			<li>
				<a class="itemPrintLink" rel="nofollow" href="<?php echo $this->item->printLink; ?>" onclick="window.open(this.href,'printWindow','width=900,height=600,location=no,menubar=no,media=no,resizable=yes,scrollbars=yes'); return false;">
					<span><?php echo JText::_('K2_PRINT'); ?></span>
				</a>
			</li>
			<?php endif; ?>

I understand it but what should I write in the place of printLink to open my designed template or where is printLink to edit?

Please Log in or Create an account to join the conversation.

  • Fotis
  • Fotis's Avatar
  • Offline
  • Administrator
  • JoomlaWorks Support Team
More
5 months 3 days ago #171274 by Fotis
Fotis replied the topic: Re: Print View Override
This if statement at the top is shown only on the print page. Similarly, you can extend it to an if/else statement. Anything that is in the "else" part will only be shown when you are NOT on the print page/preview. Whatever is in the "if" part though will be shown only in the print page/preview. So in there you can add whatever you want from the rest of the PHP template variables you see in item.php. On 99,9% of the times, developers use some print CSS magic to spice up the print page. There is rarely a need to have different markup, that's why we chose this approach. Trust me, it's FAR more flexible than Joomla's...

If you use & love K2, please take a moment to add your review and rate it
at the Joomla Extensions Directory: extensions.joomla.org/extension/k2/


IMPORTANT: Please search the forum before posting a question!

JoomlaWorks Support Team Member

Please Log in or Create an account to join the conversation.

More
5 months 2 days ago - 5 months 2 days ago #171279 by sohrab
sohrab replied the topic: Re: Print View Override
I trust you. K2 is the best. I don't have any joomla platform without it. It is essential. I understand it.
Ok I understood what you instructed. Very helpful.
Here I copy and paste what I did for my print layout so other like me won't get lost and can use this in no time:
<?php if(JRequest::getInt('print')==1): ?> 
<!-- Print button at the top of the print page only -->
<a class="itemPrintThisPage" rel="nofollow" href="#" onclick="window.print();return false;">
	<span><?php echo JText::_('K2_PRINT_THIS_PAGE'); ?></span>
</a>
<!-- 1 Item Title --> <h2 class="PrintTitle"><?php echo $this->item->title; ?></h2>
<!-- 2 Item Author -->	<span class="PrintAuthor">
		<?php echo K2HelperUtilities::writtenBy($this->item->author->profile->gender); ?>
		<?php if(empty($this->item->created_by_alias)): ?>
		<a rel="author" href="<?php echo $this->item->author->link; ?>"><?php echo $this->item->author->name; ?></a>
				<?php endif; ?>
<!-- 3 Item Image -->
	<span class="PrintImage">
	<img src="<?php echo $this->item->image; ?>" alt="<?php if(!empty($this->item->image_caption)) echo K2HelperUtilities::cleanHtml($this->item->image_caption); else echo K2HelperUtilities::cleanHtml($this->item->title); ?>" style="width:<?php echo $this->item->imageWidth; ?>px; height:auto;" />
	</span>
<!-- 4 Item introtext -->
		<div class="PrintIntroText">
			<?php echo $this->item->introtext; ?>
		</div>
<!-- 5 Item fulltext -->
		<div class="PrintFullText">
			<?php echo $this->item->fulltext; ?>
		</div>
		<?php else: ?>

<!-- End if moved to the very end of this page -->

<!-- Start K2 Item Layout -->

What you can not see here is that I moved the
<?php endif; ?>
to the very end of the item.php file. ALso as you can see I have defined new css classes.

Thanks
Last edit: 5 months 2 days ago by sohrab.

Please Log in or Create an account to join the conversation.

More
5 months 2 days ago #171280 by sohrab
sohrab replied the topic: Re: Print View Override
The problem now is that the "Print this page" text is also shown in the printed documents.

Please Log in or Create an account to join the conversation.

  • Fotis
  • Fotis's Avatar
  • Offline
  • Administrator
  • JoomlaWorks Support Team
More
5 months 2 days ago #171281 by Fotis
Fotis replied the topic: Re: Print View Override
It's this text obviously:
<a class="itemPrintThisPage" rel="nofollow" href="#" onclick="window.print();return false;">
	<span><?php echo JText::_('K2_PRINT_THIS_PAGE'); ?></span>
</a>

So you can either remove it entirely or simply move it elsewhere (e.g. at the bottom of the document).

If you use & love K2, please take a moment to add your review and rate it
at the Joomla Extensions Directory: extensions.joomla.org/extension/k2/


IMPORTANT: Please search the forum before posting a question!

JoomlaWorks Support Team Member

Please Log in or Create an account to join the conversation.

More
5 months 1 day ago #171284 by sohrab
sohrab replied the topic: Re: Print View Override
No that didn't help.
I tried putting it everywhere. I still have it on the printed document.
On the original code that would go away on the printed document.

Please Log in or Create an account to join the conversation.

  • Fotis
  • Fotis's Avatar
  • Offline
  • Administrator
  • JoomlaWorks Support Team
More
5 months 1 day ago #171285 by Fotis
Fotis replied the topic: Re: Print View Override
That's because K2's print CSS makes that link hide upon printing: github.com/getk2/k2/blob/master/components/com_k2/css/k2.print.css#L10

You can keep the same class/markup as is or you can override k2.print.css by copying the file into /templates/YOUR_TEMPLATE/css/.

If you use & love K2, please take a moment to add your review and rate it
at the Joomla Extensions Directory: extensions.joomla.org/extension/k2/


IMPORTANT: Please search the forum before posting a question!

JoomlaWorks Support Team Member

Please Log in or Create an account to join the conversation.

Moderators: william white

Powered by Kunena Forum