MyBB Community Forums

Full Version: MyBB SEO 1.1 Beta 1 meta tag issue
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Repeated meta tag. and tags can not be extracted in meta

<meta name="description" content="img alignlefthttp:imgur.comHrZcU.jpgimgpost content..." />

<meta name="description" content="img alignlefthttp:imgur.comHrZcU.jpgimgpost content..." />
Can you rephrase your problem?? Not really sure what you're saying. You saying the meta tags are in your templates twice, or...??
MyBB tags can not be extracted in meta tag. templates were checked
I have no idea what you're trying to say.
<meta name="description" content="img alignlefthttp:imgur.comHrZcU.jpgimgpost content..." />

MyBB img tag in the description. there is an error. must be only text content.
You're making no sense.
Where exactly is this?? Considering the fact MyBB doesn't even have meta descriptions anywhere by default... you must have a plugin adding a dynamic meta tag but it's not working very well.
<meta name="description" content="img alignlefthttp:imgur.comHrZcU.jpgimgpost content..." />

MyBB img tag in the description. there is an error. must be only text content.
(2010-09-06, 09:24 PM)MattRogowski Wrote: [ -> ]Considering the fact MyBB doesn't even have meta descriptions anywhere by default... you must have a plugin adding a dynamic meta tag but it's not working very well.

i am using MyBB SEO 1.1 Beta 1

problem in this line
// remote custom tags
	$custom_mycode = $cache->read("mycode");
	if (is_array($custom_mycode)) {
		foreach ($custom_mycode as $key => $mycode) 
		{
			$message = preg_replace("#".$mycode['regex']."#si", '', $message);
		}
	}
	
	// remove smilies
	$smilies = $cache->read("smilies");
	if (is_array($smilies)) {
		foreach($smilies as $sid => $smilie)
		{
			$message = str_replace($smilie['find'], '', $message);
		}
	}
	
	// remove more un-needed data here
	// -- we can decode html entities if we have PHP 5
	if (version_compare(PHP_VERSION, '5.1.0', '>=')) {
		$message = html_entity_decode($message, ENT_QUOTES, 'UTF-8');
	} else {
		$message = preg_replace("/&([a-z]+);/", "", $message);
	}
	
	$message = str_replace("\r", "", $message);
	$message = str_replace("\n", " ", $message);
	$message = str_replace(array('"', "[", "]", "<", ">", "\\", "/", "=", "+"), "", $message);
	$message = preg_replace("#\s{2,}#", " ", $message);
	
	// there has to be a limit to the description
	if (($msg_len = strlen($message)) > MAX_DESCRIPTION_LEN) {

		// try stripping on a space somewhere near the limit
		$substr_begin = substr($message, 0, MAX_DESCRIPTION_LEN+5);
		$substr = substr($message, 0, strrpos($substr_begin, ' '));

		// caused a change more than 20%, that isn't acceptable!
		if (((MAX_DESCRIPTION_LEN+5) - strlen($substr)) > (0.20*MAX_DESCRIPTION_LEN)) {
			$message = substr($message, 0, MAX_DESCRIPTION_LEN) . "...";
		} else {
			$message = $substr . "...";
		}
	}
				
	return $message;
}

/**
 * Clean the title strings to be used as file names in 
 * links, where required. 
 * 
 * @access private
 */
function seo_clean_title($title, $title_type = 't')
{
	global $lang;

	// maybe we don't need keywords at all!	
	if (NO_KEYWORDS == 1) {
		switch ($title_type) {
			case 't':
				$title = 'thread';
				break;

			case 'f':
				$title = 'forum';
				break;

			case 'a':
				$title = 'announcement';
				break;
				
			case 'u':
				$title = 'user';
				break;
		}
		return $title;
	}
	
	// do the replacements and return encoded url
	$title = str_replace("&amp;", "&", $title);
	$title = preg_replace("/&([a-z]+);/", "", $title); // remove html entities such as &amp; &quot etc..
	$title = preg_replace("/&#([0-9]+);/", "", $title); // remove entities like !
	
	// added in BETA 9, to fix issues with some latin characters
	if (stristr($lang->settings['charset'], 'iso')) {
		$title = utf8_encode($title);
		$is_utf8 = 1;
	}
	
	$title = utf8_trans_unaccent($title);
	
	// translate accents -- and maybe remove few non-ascii characters too, while on it..
	$title = preg_replace('#&([a-zA-Z])(circ|uml|grave|tilde|acute|cedil|ring|th);#', '\\1', htmlentities($title, null, 'utf-8'));
	$title = preg_replace("/&([a-z]+);/", "", $title);
	
	if ($is_utf8 == 1) {
		$title = utf8_decode($title);
	}
	
	// might be something like jackal's, we don't want it to be jackal-s
	$title = str_replace("'", '', $title);
	
	$title = str_replace(
			array(":", "?", ".", "!", "$", "^", "*", ",", ";", '"', "%", "~", "@", "#", "[", "]", "<", ">", "\\", "/", "=", "+", "(", ")"), 
						"-", $title);
	
	$title = str_replace(array('_', " ", "&"), array("-", "-", "and"), $title);
	
	// remove multiple separators
	$title = preg_replace("#-{2,}#", "-", $title);

	// remove ending - if needed
	if (substr($title, -1) == '-') {
		$title = substr($title, 0, -1);
	}	

	// convert to lowercase?
	if (FORCE_LOWERCASE == 1) {
		$title = strtolower($title);
	}
	
	// limit number of keywords in the url?
	if (MAX_KEYWORDS > 0) 
	{
		$words = explode("-", $title);
		
		// if we have more words than allowed..
		if (count($words) > MAX_KEYWORDS)
		{
			// common words, which can be stripped out if enabled
			$common_words = array('is', 'you', 'are', 'in', 'at', 'the', 'and', 'to', 'of', 'or', 'from', 'when', 'where', 'be', 'you');
			
			$i = 0;
			foreach ($words as $word) 
			{
				if ($i >= MAX_KEYWORDS) {
					break;
				}
			
				$length = strlen($word);

				// strip the keyword, if it has less length than defined, or if it's a common word -- if enabled!
				if ( ($length < LEN_FOR_KEYWORD && STRIP_LESS_LEN == 1) OR (STRIP_COMMON_WORDS == 1 && in_array($word, $common_words)) ) {
					continue;
				}
					
				// it has the number of characters to be counted as a keyword?
				if (LEN_FOR_KEYWORD == 0 OR $length >= LEN_FOR_KEYWORD) {
					$i++;
				}
			
				$new_title[] = $word;
			}
		
			// in some cases, due to less intelligence of the automatic keyword stripper there 
			// might be no keywords left to show, in that case, just display the original!
			if (count($new_title) > 0) {
				$title = implode("-", $new_title);
			}
		}
	}
	
	return rawurlencode($title);
}
Pages: 1 2