×
Kunena 5.2.4 and Blue eagle 1.6.4 released (04 Apr 2021)

The Kunena team has announce the arrival of Kunena 5.2.4 [K 5.2.4] which is now available for download as a native Joomla extension for J! 3.9.x. This version addresses most of the issues that were discovered in K 5.2 and issues discovered during the development stages of K 5.2.4

REQUIREMENTS
Blue Eagle 1.6.x requires Kunena 5.2.x to work with, this template isn't designed to works with Bootstrap 3 and Bootstrap 4.

Idea Change configuration of Meta Title, Keywords and Description

  • Trony
  • Trony's Avatar Topic Author
  • Offline
  • Junior Member
  • Music and Electronic Devices Designer.
More
6 years 3 weeks ago - 6 years 3 weeks ago #1 by Trony
Sometimes, with Kunena 3.0.8, if i put an image/video before text in the messagge, meta description is truncated to a few characters.

So in: components / com_kunena / views / topic / view.html.php
I've changed:
protected function _prepareDocument($type){
		if ($type=='default'){
			$this->headerText =  JText::_('COM_KUNENA_MENU_LATEST_DESC');
			$this->title = JText::_('COM_KUNENA_ALL_DISCUSSIONS');
 
			$page = intval ( $this->state->get('list.start') / $this->state->get('list.limit') ) + 1;
			$pages = intval ( ($this->total-1) / $this->state->get('list.limit') ) + 1;
 
			$titleClean = preg_replace("/[\"]/", "", $this->topic->subject);
			$title = JText::sprintf($titleClean) . " | Page {$page}";
			$this->setTitle($title);
 
			// TODO: use real keywords, too
			$keywords = $this->escape ( "{$this->topic->subject}, {$this->category->name}, {$this->category->getParent()->name}, {$this->config->board_title}" );
			$keywordsClean = preg_replace("/&#?[a-z0-9]+;/i","",$keywords);
			$this->setKeywords ( $keywordsClean );
 
			// Create Meta Description form the content of the first message
			// better for search results display but NOT for search ranking!
			$description = KunenaHtmlParser::stripBBCode($this->topic->first_post_message, 182);
            $description = preg_replace('/\s+/', ' ', $description); // remove newlines
			$description = trim($description); // Remove trailing spaces and beginning
			$description = preg_replace('|[[\/\!]*?[^\[\]]*?]|si', '', $description); // remove BBCode 
			$subjectClean = preg_replace("/[\"]/", "", $this->topic->subject);
			if (strlen($subjectClean) <= 79 )  {
			$keystrim = $subjectClean.".".' '. $this->category->name .', '.$this->category->getParent()->name.'.';
			} else {
			$keystrim = substr($subjectClean, 0, 80)."...".' '.$this->category->name.', '.$this->category->getParent()->name.'.';
			}
			$keysdesc = 'Page '.$page.' | '.$keystrim;
 
			// if ($page) {
			//	$description .= " ({$page}/{$pages})";  //avoid the "duplicate meta description" error in google webmaster tools
			// }
			$this->setDescription ( $keysdesc );

With this, i clean character and add | Page to meta title:
$titleClean = preg_replace("/[\"]/", "", $this->topic->subject);
			$title = JText::sprintf($titleClean) . " | Page {$page}";
			$this->setTitle($title);

With this, i clean Keywords:
$keywords = $this->escape ( "{$this->topic->subject}, {$this->category->name}, {$this->category->getParent()->name}, {$this->config->board_title}" );
			$keywordsClean = preg_replace("/&#?[a-z0-9]+;/i","",$keywords);
			$this->setKeywords ( $keywordsClean );

With this, i clean Description, strip BBCode and i control the length of the title for add ... if it's too long (Fixed 80 characters) and i add Categories.
// Create Meta Description form the content of the first message
			// better for search results display but NOT for search ranking!
			$description = KunenaHtmlParser::stripBBCode($this->topic->first_post_message, 182);
            $description = preg_replace('/\s+/', ' ', $description); // remove newlines
			$description = trim($description); // Remove trailing spaces and beginning
			$description = preg_replace('|[[\/\!]*?[^\[\]]*?]|si', '', $description); // remove BBCode 
			$subjectClean = preg_replace("/[\"]/", "", $this->topic->subject);
			if (strlen($subjectClean) <= 79 )  {
			$keystrim = $subjectClean.".".' '. $this->category->name .', '.$this->category->getParent()->name.'.';
			} else {
			$keystrim = substr($subjectClean, 0, 80)."...".' '.$this->category->name.', '.$this->category->getParent()->name.'.';
			}
			$keysdesc = 'Page '.$page.' | '.$keystrim;
 
			// if ($page) {
			//	$description .= " ({$page}/{$pages})";  //avoid the "duplicate meta description" error in google webmaster tools
			// }
			$this->setDescription ( $keysdesc );

The result is:
Meta Title: Forum: Change configuration of Meta Title, Keywords and Description | Page 1
Meta Description: Page 1 | Change configuration of Meta Title, Keywords and Description. The Kunena Project, Kunena 4.0 Feature Requests.

What do you think ?!?

Music and Electronic Devices Designer. Drum and Bass Addict. Creative Mind as Lifestyle. Cat in past Life. Soccer, Ice Hockey and Snowboard Lover.

Last edit: 6 years 3 weeks ago by Trony.

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

  • Not Allowed: to create new topic.
  • Not Allowed: to reply.
  • Not Allowed: to edit your message.
Time to create page: 0.138 seconds