DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

EXT: Page and Extension Sitemap

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed by:Markus Brunner
Changed:2012-01-23T15:02:23.530000000
Classification:mbpageandextensionsitemap
Description:Sitemap for pages AND EXTENSIONS! You can define records connected to pages which define how the links to detailview-records of a extension are created. Output can be static or via ajaxload. You have to define an SQL-Select for both variants -> programmers knowledge is needed! for correct integration
Keywords:sitemap pages extensions
Author:Markus Brunner
Email:mail@markusbrunner-design.de
URL:http://www.markusbrunner-design.de
Language:en

img-1 img-2 EXT: Page and Extension Sitemap - mbpageandextensionsitemap

EXT: Page and Extension Sitemap

Extension Key: mbpageandextensionsitemap

Language: en

Keywords: sitemap pages extensions

Copyright 2000-2008, Markus Brunner, <mail@markusbrunner-design.de>

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.org

Table of Contents

EXT: Page and Extension Sitemap 1

`Introduction 3 <#Introduction|outline>`_

What does it do? 3

Screenshots 4

`Users manual 5 <#Users%20manual|outline>`_

Insert Extension 5

`Configuration 7 <#Configuration|outline>`_

`Known problems 9 <#Known%20problems|outline>`_

`ChangeLog 10 <#ChangeLog|outline>`_

Introduction

What does it do?

Instead of a normal sitemap of pages, this extension realizes a complete sitemap where detailview-links of extensions are included. For correct implementation programmers knowledge is needed → SQL for Detailview-Records has to be defined in records (see Configuration). There is also an alternative XML-Sitemap view.

Screenshots

img-3
Extension-Output in Sitemap

If you use the normal mode or you use the ajax-mode and there aren't more records as your defined limit for output, it looks like this:

img-4

If you use the ajax-mode and there are more records than your defined limit (here: 2 records “per page”) for output, it looks like this:

img-5

Users manual

Insert Extension

After installation of the extension in the Extension Manager, you can insert the Sitemapon each page as a Content Element. At first select the Content Element “General Plugin”. Afterwards specify the extension-type by selecting “Sitemap for pages and extensions (additional config needed)” for “Selected Plugin” in the tab “Plugin”:

img-6

For a XML-Sitemap-Output, change the View to “XML-Sitemap”:

img-7

Then you can insert the startingpoint (rootpage) for the complete sitemap in the field “Record Storage Page” in the tab “Behaviour”. All output-pages need to be under this rootpage!

img-8

For getting extension-detailview-links within the sitemap additional config is needed! You can add a new folder within your TYPO3-Backend for “Sitemap” “Extension Definitions”-Records. Insert new “Extension Definitions” in your created folder via the “List”-Module in TYPO3-Backend:

img-9

Fill out “Extension Definitions”-Fields (programmers knowledge needed!):

  1. Select page on which the detailview-output is performed

2. Insert the SQL-SELECT Statement with which you want to get the records for which links should be produced. This is identical to the SQL-SELECT Satement of the extension's listview but without LIMIT ! You probably have to search in the extension and do some debug-output for getting the correct statement. The limit is inserted via this extension. Furthermore “SELECT” is replaced with ''SELECT SQL_CALC_FOUND_ROWS“ for record counting → paging within ajax-mode. And for standard-localization you can insert 'AND sys_language_uid = ###sys_language_uid###' in the where-clause. '###sys_language_uid###' will be replaced with the correct value for each statement. Be sure to name the Primary Key (which normally should be uid) “uid AS uid” [for id it would be “id AS uid”] and the title “title AS title” [for name it would be “name AS title”]. Furthermore you have to get all other params out of the table which you need for the detailview link (next step).

3. Insert all variables you need for the detailviewlink. You can insert every value you got out of the SQL-SELECT Statement by ###value### [for “uid AS uid” this would be ###uid###; for “category” this would be ###category###]. If you have Real-Url enabled you can look up the variable names in the “/typo3conf/realurl_conf.php” - otherwise you see them in the Link to your detailviews directly. E.g. for tt_news you need the param “tx_ttnews[tt_news]” which represents the uid of the record. So this would be “&tx_ttnews[tt_news]=###uid###”. More variables aren't needed for representing the record. But if you use the backPid for tt_news you could also insert the variable “tx_ttnews[backPid]” like this “&tx_ttnews[backPid]=10” (10 is an example for a page-id of your tt _news-Listview) => “&tx_ttnews[tt_news]=###uid###&tx_ttnews[backPid]=10”.

4. Define if you want to load the pages afterwards via AJAX. If you want to use this mode on a record you first have to insert the static Typoscript-Template “PageExtSitemap Ajax-Default” to your Maintemplate. If you configured the plugin via Typoscript-Setup you have to include the AJAX-Integration after your configuration again. Otherwise you use the old configuration for AJAX-Mode because static Templates are normally included before Maintemplate-TS-Setup! Best way is to not include the static template (EXT:mbpageandextensionsitemap/static/setup.txt) but copy all code to your Typoscript-Setup instead and configure it to your needs.

img-10

Configuration

This Extension produces one table “tx_mbpageandextensionsitemap_ext” and extends the page-table with the following fields: “mbpageextsitemap_exclude” (do not show page and subpages in sitemap), “mbpageextsitemap_donotlink” (do not link this page within sitemap → extension detailview pages have normally no correct output without a GET-Var that identifies the record to show).

((generated))

TypoScript

Extension TypoScript-Setup for “ plugin.tx_mbpageandextensionsitemap_pi1.

hideNavHiddenElements

Property

hideNavHiddenElements

Data type

integer

Description

define if nav_hide elements should be shown in Navigation (0 = shown, 1 = hidden)be careful if you hide all hidden pages e.g. News- Detail!You can use the option "Exclude from Sitemap for pages and extensions"in page properties instead to exclude special pages like e.g. 404

Default

0

includeSelectedPage

Property

includeSelectedPage

Data type

boolean:integer

Description

Define if the starting-point page should be displayed in the Frontend- Sitemap View. In the XML-Sitemap View it is automatically displayed.

0 = false

1 = true

Default

0

pagesClass

Property

pagesClass

Data type

string

Description

css classes for ul-lists of pages

Default

sitemap-pages

extensionClass

Property

extensionClass

Data type

string

Description

css classes for ul-lists of extensions

Default

sitemap-extension

limit

Property

limit

Data type

integer

Description

limit for extensionentries; "limit >" for no limit

Default

10

debug

Property

debug

Data type

integer

Description

activate debug mode if there is no output - if error messsage -> no correct SQL-Statement (0 = inactive, 1 = active)

Default

0

xml.appendLinkToSelectedPage

Property

xml.appendLinkToSelectedPage

Data type

boolean:integer

Description

Define if a link should be appended to the starting-point page in the XML-Sitemap View. Normally this should only be http://www.domain.com/ without index.php?id=1, therefore it is false by default.

0 = false

1 = true

Default

0

ajaxMode

Property

ajaxMode

Data type

integer

Description

Choose if Ajax-Mode can generally be used in records

Default

1

_LOCAL_ LANG

Property

_LOCAL_ LANG

Data type

array

Description

Standard-Extension overwrite of language markers of file EXT:mbpageandextensionsitemap/pi1/locallang.xml; e.g. for loading in language default = english this would be _ LOCAL_LANG.default.loading = my new loading value...

Default

Extension TypoScript-Setup for “ plugin.tx_mbpageandextensionsitemap_pi1.ajaxMode.

usedTypeNum

Property

usedTypeNum

Data type

integer

Description

typeNum used in ajaxextensionsitemap.typeNum

Default

4942

usedLib

Property

usedLib

Data type

string

Description

select output of starter and navigation: jquery/mootools

Default

jquery

doNotIncludeLib

Property

doNotIncludeLib

Data type

integer

Description

choose if you want to include the JS-Lib global in your TYPO3 (0 = false, 1 = true)

Default

0

jquery_starter

Property

jquery_starter

Data type

string → path

Description

possible overwrite of starter for jquery e.g. fileadmin/js/mystarter.tpl; original used starter: EXT:mbpageandextensionsitemap/res/templates/jquery_starter.tpl

Default

mootools_starter

Property

mootools_starter

Data type

string → path

Description

possible overwrite of starter for mootools e.g. fileadmin/js/mystarter.tpl;

original used starter: EXT:mbpageandextensionsitemap/res/templates/mootools_starter.tpl

Default

typeNum

Property

typeNum

Data type

integer

Description

must be identical to plugin.tx_mbpageandextensionsitemap_pi1.ajaxMode.usedTypeNum

Default

4942 → “< plugin.tx_mbpageandextensionsitemap_pi1.ajaxMode.usedTypeNum”

10

Property

10

Data type

plugin

Description

Output of extension with typeNum out of ajaxextensionsitemap.typeNum

Default

“< plugin.tx_mbpageandextensionsitemap_pi1”

10.mode

Property

10.mode

Data type

string

Description

Mode selection “AJAX” for correct activation

Default

AJAX

10.extensionClass

Property

10.extensionClass

Data type

string

Description

css classes for ul-lists of extensions (ajax-loaded)

Default

sitemap-extension-ajaxload

10.limit

Property

10.limit

Data type

integer

Description

Limit for extension-entries per page for ajax-load

Default

5

config.disableAllHeaderCode

Property

config.disableAllHeaderCode

Data type

page-config

Description

do not change this!

Default

1

config.additionalHeaders

Property

config.additionalHeaders

Data type

page-config

Description

do not change this!

Default

Content-type:text/xml

config.no_cache

Property

config.no_cache

Data type

page-config

Description

do not change this!

Default

1

config.xhtml_cleaning

Property

config.xhtml_cleaning

Data type

page-config

Description

do not change this!

Default

0

Default values for pages and extensions without ajaxMode (included generally): EXT:mbpageandextensionsitemap/ext_typoscript_setup.txt

Default values for pages and extensions with ajaxMode (static template – if you want to change something, copy this code in your TypoScript! Otherwise include the static template):

EXT:mbpageandextensionsitemap/static/setup.txt

Known problems

None, yet.

ChangeLog

See ChangeLog file in extension directory.

10