Page 9 of 10

Re: Topic SEO

Posted: 27 Aug 2010, 09:35
by Steve
That would be a mod request.

Re: Topic SEO

Posted: 27 Aug 2010, 17:48
by heredia21
Yes it will.


edit---


It is very similiar to what I want to do. I wanted the Price on one line then the subject on the other. Two different input boxes. Something like topic seo but make it required on some forums.

Re: Topic SEO

Posted: 28 Aug 2010, 21:24
by Steve
heredia21 » 27 Aug 2010, 17:48 wrote:Yes it will.

edit---
It is very similiar to what I want to do. I wanted the Price on one line then the subject on the other. Two different input boxes. Something like topic seo but make it required on some forums.
Then you will have to post in phpBB3 support requesting what you want, and it will be as and when i have time to do it.

*off topic
I have seen you have not removed my styles copywrite this week so will post how to fix online user image in my styles thread.

* next version
And for other members, Topic SEO 1.0.3 will include a moderator,s admin and permissions set for registered users a button to mark certian posts off topic ( hidden for search engines ) ,and include post tags. ;)

Re: Topic SEO

Posted: 28 Aug 2010, 21:36
by heredia21
Thank you. can you just split my post to the request?

Re: Topic SEO

Posted: 28 Aug 2010, 21:39
by Steve
Nope.

Re: Topic SEO

Posted: 01 Sep 2010, 20:35
by demon
I made a little extra field, a page title field, so your page title is not the same as the topic title...

Re: Topic SEO

Posted: 01 Sep 2010, 20:56
by Ælly
Is now compatible with the SEO Dynamic meta tags?

Re: Topic SEO

Posted: 01 Sep 2010, 21:51
by Steve
demon » 01 Sep 2010, 20:35 wrote:I made a little extra field, a page title field, so your page title is not the same as the topic title...
do what ?
Ælly wrote:Is now compatible with the SEO Dynamic meta tags?
have a look at the overall_header.html edit for the meta tags for that mod ,keywords and description and give the html code.

Re: Topic SEO

Posted: 02 Sep 2010, 10:12
by demon
Steve© » 01 Sep 2010, 21:51 wrote:
demon » 01 Sep 2010, 20:35 wrote:I made a little extra field, a page title field, so your page title is not the same as the topic title...
do what ?
Like i said, the field can make the page title different then the topic title, and yes, it has a purpose..

Example:
Lets your running a car forum and you made a topic about the newest Porsche car, the topic title will be something like "talk about the newest Porsche car!" its nice and readable for the users, but search engines don't have much on that kind a title, that's where the page title jumps in! In the page title you can put the most important keywords like "Porsche|Cayman|news|..." or you could do it like:" News about the new Porsche Cayman".

In short:
You can target your topic at certain keywords so your forum topic can rank better on those keywords, and you keep the topic title readable for the normal users :|

The same can be done with (sub)forums

See http://static.googleusercontent.com/ext ... -guide.pdf

from the end of page 2.

Re: Topic SEO

Posted: 03 Sep 2010, 23:38
by Ælly
Here Steve ;)

Code: Select all

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
{SEO_BASE_HREF}

<meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}" />
<title>{PAGE_TITLE}<!-- IF S_IN_MCP --> &bull; {L_MCP}<!-- ELSEIF S_IN_UCP --> &bull; {L_UCP}<!-- ENDIF --></title>
<meta http-equiv="content-language" content="{S_USER_LANG}" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="imagetoolbar" content="no" />
{META_TAG}
{META}
<!-- BEGIN gym_rsslinks -->
<link rel="alternate" type="application/rss+xml" title="{gym_rsslinks.TITLE}" href="{gym_rsslinks.URL}" />
<!-- END gym_rsslinks -->

<!-- IF S_ENABLE_FEEDS -->
<link rel="alternate" type="application/atom+xml" title="{L_FEED} - {SITENAME}" href="{U_FEED}" />
<!-- IF S_ENABLE_FEEDS_NEWS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_NEWS}" href="{U_FEED}?mode=news" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUMS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_FORUMS}" href="{U_FEED}?mode=forums" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_TOPICS}" href="{U_FEED}?mode=topics" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUM and S_FORUM_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FORUM} - {FORUM_NAME}" href="{U_FEED}?f={S_FORUM_ID}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPIC and S_TOPIC_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_TOPIC} - {TOPIC_TITLE}" href="{U_FEED}?f={S_FORUM_ID}&t={S_TOPIC_ID}" /><!-- ENDIF -->
<!-- ENDIF -->

<link rel="stylesheet" href="{T_STYLESHEET_LINK}" type="text/css" />
<!-- MODIFICA JQUERY PHPBBCODES -->
    <style type="text/css">

    div.jGrowl {
       padding:          10px;
       z-index:          9999;
    }

    /** Special IE6 Style Positioning **/
    div.ie6 {
       position:          absolute;
    }

    div.ie6.top-right {
       right:             auto;
       bottom:          auto;
       left:             expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' );
         top:             expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' );
    }

    div.ie6.top-left {
       left:             expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' );
       top:             expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' );
    }

    div.ie6.bottom-right {
       left:             expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' );
       top:             expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' );
    }

    div.ie6.bottom-left {
       left:             expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' );
       top:             expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' );
    }

    div.ie6.center {
       left:             expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' );
       top:             expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' );
       width:             100%;
    }

    /** Normal Style Positions **/
    body > div.jGrowl {
       position:         fixed;
    }

    body > div.jGrowl.top-left {
       left:             0px;
       top:             0px;
    }

    body > div.jGrowl.top-right {
       right:             0px;
       top:             0px;
    }

    body > div.jGrowl.bottom-left {
       left:             0px;
       bottom:            0px;
    }

    body > div.jGrowl.bottom-right {
       right:             0px;
       bottom:          0px;
    }

    body > div.jGrowl.center {
       top:             0px;
       width:             50%;
       left:             25%;
    }

    /** Cross Browser Styling **/
    div.center div.jGrowl-notification, div.center div.jGrowl-closer {
       margin-left:       auto;
       margin-right:       auto;
    }

    div.jGrowl div.jGrowl-notification, div.jGrowl div.jGrowl-closer {
       background-color:       #000;
       color:                #fff;
       opacity:             .85;
       filter:             alpha(opacity = 85);
       zoom:                1;
       width:                235px;
       padding:             10px;
       margin-top:          5px;
       margin-bottom:          5px;
       font-family:          Tahoma, Arial, Helvetica, sans-serif;
       font-size:             12px;
       text-align:          left;
       display:             none;
       -moz-border-radius:    5px;
       -webkit-border-radius:   5px;
    }

    div.jGrowl div.jGrowl-notification {
       min-height:          40px;
    }

    div.jGrowl div.jGrowl-notification div.header {
       font-weight:          bold;
       font-size:            10px;
    }

    div.jGrowl div.jGrowl-notification div.close {
       float:                right;
       font-weight:          bold;
       font-size:             12px;
       cursor:               pointer;
    }

    div.jGrowl div.jGrowl-closer {
       height:             15px;
       padding-top:          4px;
       padding-bottom:       4px;
       cursor:             pointer;
       font-size:            11px;
       font-weight:          bold;
       text-align:          center;
    }

    </style>
          <script type="text/javascript" src="{ROOTPATH}images/jgrowl/jquery-1.3.2.js"></script>
    <script type="text/javascript" src="{ROOTPATH}images/jgrowl/jquery.ui.all.js"></script>
    <script type="text/javascript" src="{ROOTPATH}images/jgrowl/jquery.jgrowl.js"></script>
<!-- FINE MODIFICA -->

<script type="text/javascript">
// <![CDATA[
<!-- IF S_USER_PM_POPUP -->
	if ({S_NEW_PM})
	{
		popup('{UA_POPUP_PM}', 400, 225, '_phpbbprivmsg');
	}
<!-- ENDIF -->

function popup(url, width, height, name)
{
	if (!name)
	{
		name = '_popup';
	}

	window.open(url.replace(/&/g, '&'), name, 'height=' + height + ',resizable=yes,scrollbars=yes,width=' + width);
	return false;
}

// www.phpBB-SEO.com SEO TOOLKIT BEGIN
function jumpto() {
	var page = prompt('{LA_JUMP_PAGE}:', '{ON_PAGE}');
	var perpage = '{PER_PAGE}';
	var base_url = '{A_BASE_URL}';
	var seo_delim_start = '{SEO_START_DELIM}';
	var seo_static_pagination = '{SEO_SATIC_PAGE}';
	var seo_ext_pagination = '{SEO_EXT_PAGE}';
	if (page !== null && !isNaN(page) && page == Math.floor(page) && page > 0) {
		var seo_page = (page - 1) * perpage;
		var anchor = '';
		var anchor_parts = base_url.split('#');
		if ( anchor_parts[1] ) {
			base_url = anchor_parts[0];
			anchor = '#' + anchor_parts[1];
		}
		if ( base_url.indexOf('?') >= 0 ) {
			document.location.href = base_url.replace(/&/g, '&') + '&start=' + seo_page + anchor;
		} else if ( seo_page > 0 ) {
			var seo_type1 = base_url.match(/\.[a-z0-9]+$/i);
			if (seo_type1 !== null) {
				document.location.href = base_url.replace(/\.[a-z0-9]+$/i, '') + seo_delim_start + seo_page + seo_type1 + anchor;
			}
			var seo_type2 = base_url.match(/\/$/);
			if (seo_type2 !== null) {
				document.location.href = base_url + seo_static_pagination + seo_page + seo_ext_pagination + anchor;
			}
		} else {
			document.location.href = base_url + anchor;
		}
	}
}
var seo_external = {SEO_EXTERNAL};
var seo_external_sub = {SEO_EXTERNAL_SUB};
var seo_ext_classes = {SEO_EXT_CLASSES};
var seo_hashfix = {SEO_HASHFIX};
/**
*  phpbb_seo_href()
*  Fixes href="#something" links with virtual directories
*  Optionally open external or marked with a css class links in a new window
*  in a XHTML 1.x compliant way.
*/
function phpbb_seo_href() {
	var current_domain = document.domain.toLowerCase();
	if (!current_domain || !document.getElementsByTagName) return;
	if (seo_external_sub && current_domain.indexOf('.') >= 0) {
		current_domain = current_domain.replace(new RegExp(/^[a-z0-9_-]+\.([a-z0-9_-]+\.([a-z]{2,6}|[a-z]{2,3}\.[a-z]{2,3}))$/i), '$1');
	}
	if (seo_ext_classes) {
		var extclass = new RegExp("(^|\s)(" + seo_ext_classes + ")(\s|$)");
	}
	if (seo_hashfix) {
		var basehref = document.getElementsByTagName('base')[0];
		if (basehref) {
			basehref = basehref.href;
			var hashtest = new RegExp("^(" + basehref + "|)#[a-z0-9_-]+$");
			var current_href = document.location.href.replace(/#[a-z0-9_-]+$/i, "");
		} else {
			seo_hashfix = false;
		}
	}
	var hrefels = document.getElementsByTagName("a");
	var hrefelslen = hrefels.length;
	for (var i = 0; i < hrefelslen; i++) {
		var el = hrefels[i];
		var hrefinner = el.innerHTML.toLowerCase();
		if (el.onclick || (el.href == '') || (el.href.indexOf('javascript') >=0 ) || (hrefinner.indexOf('<a') >= 0) ) {
			continue;
		}
		if (seo_hashfix && el.hash && hashtest.test(el.href)) {
			el.href = current_href + el.hash;
		}
		if (seo_external) {
			if ((el.href.indexOf(current_domain) >= 0) && !(seo_ext_classes && extclass.test(el.className))) {
				continue;
			}
			el.onclick = function () { window.open(this.href); return false; };
		}
	}
}
window.onload = function() {
	if (seo_external || seo_hashfix) {
		phpbb_seo_href();
	}
	// here you can add other window.onload events
}
// www.phpBB-SEO.com SEO TOOLKIT END

/**
* Find a member
*/
function find_username(url)
{
	popup(url, 760, 570, '_usersearch');
	return false;
}

/**
* Mark/unmark checklist
* id = ID of parent container, name = name prefix, state = state [true/false]
*/
function marklist(id, name, state)
{
	var parent = document.getElementById(id);
	if (!parent)
	{
		eval('parent = document.' + id);
	}

	if (!parent)
	{
		return;
	}

	var rb = parent.getElementsByTagName('input');
	
	for (var r = 0; r < rb.length; r++)
	{
		if (rb[r].name.substr(0, name.length) == name)
		{
			rb[r].checked = state;
		}
	}
}

<!-- IF ._file -->

	/**
	* Play quicktime file by determining it's width/height
	* from the displayed rectangle area
	*
	* Only defined if there is a file block present.
	*/
	function play_qt_file(obj)
	{
		var rectangle = obj.GetRectangle();

		if (rectangle)
		{
			rectangle = rectangle.split(',')
			var x1 = parseInt(rectangle[0]);
			var x2 = parseInt(rectangle[2]);
			var y1 = parseInt(rectangle[1]);
			var y2 = parseInt(rectangle[3]);

			var width = (x1 < 0) ? (x1 * -1) + x2 : x2 - x1;
			var height = (y1 < 0) ? (y1 * -1) + y2 : y2 - y1;
		}
		else
		{
			var width = 200;
			var height = 0;
		}

		obj.width = width;
		obj.height = height + 16;

		obj.SetControllerVisible(true);

		obj.Play();
	}
<!-- ENDIF -->

// ]]>
</script>
<!-- MODIFICA JQUERY PHPBBCODES -->
    <script type="text/javascript">

          // In case you don't have firebug...
          if (!window.console || !console.firebug) {
             var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
             window.console = {};
             for (var i = 0; i < names.length; ++i) window.console[names[i]] = function() {};
          }

          (function($){

             $(document).ready(function(){

                // This value can be true, false or a function to be used as a callback when the closer is clciked
                $.jGrowl.defaults.closer = function() {
                   console.log("Closing everything!", this);
                };
                
                // A callback for logging notifications.
                $.jGrowl.defaults.log = function(e,m,o) {
                   $('#logs').append("<div><strong>#" + $(e).attr('id') + "</strong> <em>" + (new Date()).getTime() + "</em>: " + m + " (" + o.theme + ")</div>")
                }            
                <!-- IF S_DISPLAY_PM and (S_USER_NEW_PRIVMSG or S_USER_UNREAD_PRIVMSG) -->
                $.jGrowl("Hai {PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD --> e {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF -->.", { header: 'Ciao {S_USERNAME}', sticky: true, });
                <!-- ENDIF -->
                
                <!-- IF not S_IS_BOT and not S_USER_LOGGED_IN -->
                $.jGrowl("Benvenuto su {SITENAME} - Se sei un Utente Registrato, esegui il Log-In, altrimenti Registrati sul Forum.", { header: 'Benvenuto Visitatore', sticky: true, });
                <!-- ENDIF -->
             });
          })(jQuery);

          </script>
<!-- FINE MODIFICA -->
<!-- collpase categories MOD -->
<script type="text/javascript" src="{ROOT_PATH}js/coll_script.js"></script>
<!-- collpase categories MOD -->
<!-- INCLUDE gallery/plugins_header.html -->
</head>
<!-- Esolitos -->
<div class="wrapp_all">
<!-- And Esolitos -->
<body class="{S_CONTENT_DIRECTION}">

<a name="wrapheader"></a>
<table class="bodyline" width="100%" cellspacing="0" cellpadding="0" border="0">
    <tr>
	    <td style="padding: 0px;">

<div id="wrapheader" style="position: relative;">
<!-- header_cliccabile_START -->
<a href="{U_INDEX}"  style="width: 100%; height: 100%; display: block; position: absolute;">&nbsp;</a>
<!-- header_cliccabile_END -->
		<table class="topbkg" width="100%" cellspacing="0">
		    <tr>

			</tr>
		</table>
	</div>

	<!--CANC-->
	<div id="xnavbar_navbar">
		<table width="918px" min-width="918px" cellspacing="0">
		<tr>
			<td width="15" id="left">&nbsp;</td>
			<td id="active"><a href="http://rpgmkr.net/forum/portal.php">Portale</a></td>
			<td><a href="http://rpgmkr.net/forum/regolamento-t2.html">Regolamento</a></td>
			<td><a href="http://www.rpgmkr.net/forum/rivista_mkr.php">Rivista MKR</a></td>
<!-- IF S_USER_LOGGED_IN -->
<td><a href="#" onclick="window.open('http://www.rpgmkr.net/forum/chat/', 'Chat RpgMkr.net', 'screenX='+(screen.width-800)/2+',screenY='+(screen.height-600)/2+',width=800,height=600,resizable=yes');">Chat RMK</a></td>
<!-- ENDIF -->
<td><a href="http://www.rpgmkr.net/forum/games.php">Giochi</a></td>
			<td colspan="2"></td>
                        <td id="search_box">
				<form action="/forum/search.php" id="cse-search-box">
					<fieldset>
						<input type="text" name="keywords" maxlength="128" value="<!-- IF SEARCH_WORDS-->{SEARCH_WORDS}<!-- ELSE -->{L_SEARCH_MINI}<!-- ENDIF -->" 
onclick="if(this.value=='{LA_SEARCH_MINI}')this.value='';" onblur="if(this.value=='')this.value='{LA_SEARCH_MINI}';" />
					</fieldset>
				</form>
			</td>
			<td width="15" id="right">&nbsp;</td>
		</tr>
		</table>
	</div><br />

          <table id="xnavbar_navbar" style="margin-top: 0px;" width="918px" min-width="918px" cellspacing="0">
             <tr>
                <td><a href="http://www.rpgmkr.net/forum/animefacemaker.php"><span>Anime Face Maker</span></a></li>
                <td><a href="http://www.rpgmkr.net/forum/charamakerxp.php"><span>Chara Maker XP</span></a></li>
                <td><a href="http://www.rpgmkr.net/forum/generatore_di_nomi.php"><span>Generatore di Nomi</span></a></li>
                <td><a href="http://www.rpgmkr.net/forum/palettecolori.php"><span>Palette Colori</span></a></li>
             </tr>
          </table>
<!--CANCEND-->

<div id="wrapcentre">
<table class="tablebg" cellspacing="1"  width="100%">
<tr>
<td class="row1" height="50px" width="73%">
<p class="breadcrumbs">
<a href="{U_INDEX}"><img class="inlineimg" border="0" src="{T_THEME_PATH}/images/folder.gif"  alt="" />&nbsp;<strong>{L_INDEX}</strong></a>
<!-- BEGIN navlinks --><strong> &#187;</strong>&nbsp;<a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks -->
<br /><!-- IF TOPIC_TITLE --><!-- IF U_VIEW_TOPIC --><img class="inlineimg" border="0" src="{T_THEME_PATH}/images/folder2.gif" alt="" />&nbsp;<strong style="color:black!important;">{TOPIC_TITLE}</strong><!-- ENDIF --><!-- ENDIF --></p>

<div align="center"> <p><!-- IF U_RESTORE_PERMISSIONS --> &nbsp;<a href="{U_RESTORE_PERMISSIONS}">{L_RESTORE_PERMISSIONS}</a><!-- ENDIF -->
				<!-- IF S_BOARD_DISABLED and S_USER_LOGGED_IN --> &nbsp;<span style="color: red;">{L_BOARD_DISABLED}</span><!-- ENDIF --></p></div>
			</td>
<td class="row2" height="50px" width="27%"> <!-- INCLUDE menu1.html --></td></tr>
</table>
<!-- INCLUDE menu2.html --><br />
<!-- Modifica Selezione Host -->
<hr><br />
<center><!-- INCLUDE selectorhost_body.html --></center><br />
<hr>
<!-- Fine Modifica Host -->
    <br style="clear: both;" />
    <!-- INCLUDE breadcrumbs.html -->
    <br />