Seo Metatags Info Plugin v2.0
-----------------------------

Features:
    * Single Entries - Editing and output of description, keywords, and robots meta tags
    * Static pages - Editing (mod required see below) and output of description, keywords, and robots meta tags
    * Categories - Output of description, keywords, and robots meta tags
    * Archives - Output of description, keywords, and robots meta tags ** New **
    * Tags - Output of description, keywords, and robots meta tags ** New **
    * Canonical - Output of the canonical meta tag (selectable) ** New **
    * Title - Output of pretty titles for categories, archives, and tags pages (selectable) ** New **
    * Tries to make pages unique by appending page #nn or 'comments' to titles and descriptions ** New **
    * Title - Output of the title meta tag (selectable) ** New **
    * Better data layout - All metatags.ini files are now stored under fp-contents/seometa/ ** New **
    * Data Migration - Data from the v1.0 plugin will automatically be migrated to the new v2.0 data layout (selectable) ** New **
    * Editing of meta tags for Single Entries and Static pages will now save first time ** New **

Plugin Configuration

    * Pretty Titles - To generate pretty titles for pages 
		e.g. Blog Title - Category - Flatpress or 
			 Blog Title - Archive - 2011/06' then change

			define('SEOMETA_GEN_TITLE', false);

		to

			define('SEOMETA_GEN_TITLE', true);

    * Title Meta Tag - To generate a <meta name=title> tag then change

			define('SEOMETA_GEN_TITLE_META', false);

		to

			define('SEOMETA_GEN_TITLE_META', true);

    * Canonical Meta Tag - This tag helps to eliminate duplicate content.
		Re: wiki page 'Canonical Meta Tag'

		To generate a <link rel=canonical..> tag then change

			define('SEOMETA_GEN_CANONICAL', false);

		to

			define('SEOMETA_GEN_CANONICAL', true);

    * Hide Comment Pages - To force comment pages to point to the main page and 
		help eliminate duplicate content (i.e make the non comment version of 
		the page canonical) then change

			define('SEOMETA_HIDECOMMENTS', false);

		to

			define('SEOMETA_HIDECOMMENTS', true);

    * Data Migration - IMPORTANT: Backup your data first!

		To enable the experimental data migration feature, then change

			define('SEOMETA_MIGRATE_DATA', false);

		to

			define('SEOMETA_MIGRATE_DATA', true);

		Once data migration has taken place the option can be set back to false.

	* Non LATIN-1 users - (in particular) can specify additional valid characters 
		for the description and keywords meta tags by modifying the 
		$keep_chars variable e.g to allow the characters a?? change $keep_chars from

			$keep_char = "";

		to

			$keep_char = "a??";

    * Description Prefix - to modify the description meta tag prefix from the 
		default of Blog Title -  to for example Welcome to Blog Title then change

			$prepend_description = $fp_config['general']['title'].' - ';

		to

			$prepend_description = "Welcome to ".$fp_config['general']['title'].' - ';

    * Keywords Prefix - to modify the keywords meta tag prefix from the default 
		of Blog Title,  to for example nothing (that is remove/delete it) then change

		$prepend_keywords = $fp_config['general']['title'].', ';

			to

		$prepend_keywords = "";

    * Language - you can create/translate you own language files and place them 
		inside the plugins lang subdirectory e.g. for en-us (file: lang.en-us.php)

			<?php
			$lang['admin']['plugin']['seometataginfo'] = array (
				'legend_desc'        => 'Meta Tag',
				'input_desc'        => 'Insert the description of the entry:',
				'input_keywords'    => 'Insert the keywords of the entry:',
				'input_noindex'        => 'Disallow Indexing:',
				'input_nofollow'    => 'Disallow Following:',
				'input_noarchive'    => 'Disallow Archiving:',
				'input_nosnippet'    => 'Disallow snippets:',
			);
			$lang['plugin']['seometataginfo'] = array (
				'sep'        => ' - ',
				'home'        => 'Home',
				'blog_home' => 'Blog Home',
				'blog_page' => 'Blog',
				'archive'    => 'Archive',
				'category'    => 'Category',
				'tag'        => 'Tag',
				'contact'    => 'Contact Us',
				'comments'    => 'Comments',
				'pagenum'    => 'Page #'
			);
			?>

		and as an example of my non-existant italian it-it (file: lang.it-it.php)

			<?php
			$lang['admin']['plugin']['seometataginfo'] = array (
				'legend_desc'        => 'Meta Tag',
				'input_desc'        => 'Inserire la descrizione del post:',
				'input_keywords'    => 'Inserire la parola chiave del post:',
				'input_noindex'        => "Non indice:",
				'input_nofollow'    => 'Non seguire:',
				'input_noarchive'    => "Non archiviare:",
				'input_nosnippet'    => "Disallow snippets:",
			);
			$lang['plugin']['seometataginfo'] = array (
				'sep'        => ' - ',
				'home'        => 'Casa',
				'blog_home' => 'Blog Casa',
				'blog_page' => 'Blog',
				'archive'    => 'Archivo',
				'category'    => 'Categoria',
				'tag'        => 'Tag',
				'contact'    => 'Contatto con noi',
				'comments'    => 'Commenti',
				'pagenum'    => 'Pagina #'
			);
			?>

		Note: If you have created a lang file for your specific language, send it to me I will include it in the plugin pack

Data Layout and Storage Structure

The new improved data layout looks like

	fp-content/content/seometa/
	+-- archives
	   +-- archive-2011-05_metatags.ini
	   +-- archive-2011-06-02_metatags.ini
	   +-- archive-2011-06-14_metatags.ini
	   +-- archive-2011-06_metatags.ini
	+-- categories
	   +-- cat--255_metatags.ini
	   +-- cat-1000_metatags.ini
	   +-- cat-1100_metatags.ini
	   +-- cat-1_metatags.ini
	   +-- cat-20000_metatags.ini
	+-- default
	   +-- metatags.ini
	+-- entries
	   +-- entry110511-140827_metatags.ini
	   +-- entry110602-152332_metatags.ini
	   +-- entry110614-194315_metatags.ini
	+-- statics
	   +-- Home_metatags.ini
	   +-- blog_metatags.ini
	   +-- contact_metatags.ini
	   +-- menu_metatags.ini
	+-- tags
		+-- tag-flatpress_metatags.ini
		+-- tag-plugin_metatags.ini

File Format of the metatag.ini files

The format of the metatags.ini remains the same as the v1.0 plugin and looks like

	[meta]
	description=This is the description
	keywords=These, are the, comma, separated, list of keywords
	noindex=0=off, 1=on
	nofollow=0=off, 1=on
	noarchive=0=off, 1=on
	nosnippet=0=off, 1=on

They are created directly by the plugin or can created manually as described below

    * Single Entries - inside the seometa/entries subdirectory. The name of the
		metatags.ini is prepended with the id of the entry e.g. for an entry with
		an id of entry110401-142857' the resultant file is
              fp-content/content/seometa/entries/entry110401-142857_metatags.ini.

    * Static Pages - inside the seometa/statics subdirectory. The name of the
		metatags.ini is prepended with the name of the static page e.g. for the
		About static page the resultant file is
              fp-content/content/static-meta/about_metatags.ini.
		All static page metatag.ini files must be created manually unless a one
		line modification (see note below) is applied to the file
              /admin/panels/static/admin.static.write.tpl

		Regardless of whether the above file is modified to allow editing Static 
		page meta tag data, due to limitations the Contact Us page metatag.ini 
		file must always be created manually, it should be named
		'contact_metatags.ini' and placed with the other files in the
		fp-content/content/seometa/statics/ subdirectory.

		Note: IMPORTANT Static page modification to allow editing in the 
		Write Static Admin Panel. Applies to flatpress version >= 0.1010.0.

		To allow this plugin to edit metadata on static pages the file.
				  /admin/panels/static/admin.static.write.tpl
		has to be modified to call the same action hook called by the
		Write Entries Admin Panel, at aproximately line 35 add the line

			{action hook=simple_edit_form}

		so that the code now looks like

			<textarea name="content" {$error.content|notempty:'class="field-error"'} id="content".
			 rows="20" cols="74">{$content|default:$smarty.request.content|htmlspecialchars}</textarea><br />
			 {*here will go a plugin hook*}
			 {action hook=simple_edit_form} {* <<<<<========== ADDED <<<<<========== *}
			 
			 <fieldset id="admin-static-filename"><legend>{$panelstrings.fieldset2}</legend>
			 <input type="hidden" name="oldid" id="oldid" value="{$id|default:$smarty.request.oldid}" />
			<label for="id">{$panelstrings.pagename}</label><br />

    * Category Pages - inside the cat-meta subdirectory. All category metatag.ini
		files have to be created manually and named cat-<cat id>_metatags.ini.
		So using an example category of 1000 the metatags.ini file would be
		created as fp-content/content/cat-meta/cat-1000_metatags.ini.

    * Archive Pages - although a default file is created by the plugin these should
		be edited manually and placed inside the seometa/archives subdirectory.
		The name of the metatags.ini is prepended with the date of the archive
		e.g. for an archive for June 2011 the resultant file is
              fp-content/content/seometa/archives/archive-2011-06_metatags.ini.
		for an archive for 20th June 2011 the resultant file is
              fp-content/content/seometa/archives/archive-2011-06-20_metatags.ini.

    * Tag Pages - although a default file is created by the plugin these should
		be edited manually and placed inside the seometa/tags subdirectory.
		The name of the metatags.ini is prepended with the name of the tag
		e.g. for an tag called flatpress the resultant file is
              fp-content/content/seometa/tags/tag-flatpress_metatags.ini.

Examples

    * Tag named flatpress, with noindex option

		[meta]
		description=Flatpress related articles, guides and plugins
		keywords=flatpress, flatpress articles, flatpress guides, flatpress plugins
		noindex=1
		nofollow=0
		noarchive=0
		nosnippet=0

    * Archive of June 2011',  with noindex and nofollow option

		[meta]
		description=Blog archive for June 2011
		keywords=archive, blog archive
		noindex=1
		nofollow=1
		noarchive=0
		nosnippet=0

 

Installation

Simply download the plugin package and extract the contents of the zip archive 
into the flatpress fp-plugins subdirectory, make the above modification to 
enable editing static page metatag data (optional), fix the file permissions to 
be the same as the other plugins/widgets and then enable the plugin in the admin pages.
