TYPO3 v15 dev-main snapshot ()
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
|
||||
.. _configuration:
|
||||
|
||||
=============
|
||||
Configuration
|
||||
=============
|
||||
|
||||
Target group: **Developers, Integrators**
|
||||
|
||||
.. seealso::
|
||||
General SEO recommendations for TypoScript and Site Configuration can be
|
||||
found in `TYPO3 explained, Suggested configuration options for improved
|
||||
SEO in TYPO3 <https://docs.typo3.org/permalink/t3coreapi:seo-configuration>`_.
|
||||
|
||||
.. toctree::
|
||||
:caption: Subpages
|
||||
:glob:
|
||||
|
||||
*
|
||||
|
||||
.. _configuration-site-sets:
|
||||
|
||||
Site sets
|
||||
=========
|
||||
|
||||
.. versionadded::13.3
|
||||
EXT:seo now offers a site set "SEO Sitemap" to include the TypoScript to
|
||||
output the XML sitemap.
|
||||
|
||||
Include the site set "SEO Sitemap", `typo3/seo-sitemap` via the :ref:`site set in the site
|
||||
configuration <t3coreapi:site-sets>` or the custom
|
||||
:ref:`site package's site set <t3sitepackage:site_set>`.
|
||||
|
||||
Settings for the included set can be adjusted in the :ref:`settings-editor`.
|
||||
|
||||
.. figure:: /Images/SiteSet.png
|
||||
|
||||
Add the site set "SEO Sitemap"
|
||||
|
||||
This will change your site configuration file as follows:
|
||||
|
||||
.. literalinclude:: _site_config.diff
|
||||
:caption: config/sites/my-site/config.yaml (diff)
|
||||
|
||||
If your site has a custom :ref:`site package <t3sitepackage:start>`, you
|
||||
can also add the "SEO Sitemap" set as dependency in your site's configuration:
|
||||
|
||||
.. literalinclude:: _site_package_set.diff
|
||||
:caption: EXT:my_site_package/Configuration/Sets/MySite/config.yaml (diff)
|
||||
@@ -0,0 +1,28 @@
|
||||
:navigation-title: Settings
|
||||
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _configuration-site-set-settings:
|
||||
|
||||
=============================
|
||||
Site sets settings of EXT:seo
|
||||
=============================
|
||||
|
||||
The following settings are available via the
|
||||
:ref:`site set settings <configuration-site-sets>` and can be adjusted in
|
||||
the :ref:`settings-editor`.
|
||||
|
||||
.. versionchanged:: 14.0
|
||||
The names of the GET parameters used in the sitemap generated by EXT:seo have
|
||||
been changed from `page` and `sitemap` to `tx_seo[page]` and `tx_seo[sitemap]`
|
||||
respectively. If you are overriding the templates for the sitemap, provide
|
||||
separate sets for TYPO3 13.4 and 14.x support.
|
||||
|
||||
.. versionchanged:: 14.1
|
||||
The site set `typo3/seo-sitemap` now ships a sitemap route enhancer. See
|
||||
also `Automatic routing for the XML sitemap <https://docs.typo3.org/permalink/typo3/cms-seo:xmlsitemap-routing>`_.
|
||||
|
||||
.. typo3:site-set-settings:: PROJECT:/Configuration/Sets/Sitemap/settings.definitions.yaml
|
||||
:name: seo-settings
|
||||
:type:
|
||||
:Label: Settings of the site set of EXT:seo
|
||||
@@ -0,0 +1,23 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _settings-editor:
|
||||
|
||||
===============
|
||||
Settings editor
|
||||
===============
|
||||
|
||||
When the :ref:`site set for the SEO sitemap <configuration-site-sets>` is included,
|
||||
the settings for sitemaps become available in the editor:
|
||||
|
||||
You can find the available site settings in module
|
||||
:guilabel:`Sites > Setup > Settings`
|
||||
|
||||
You can change individual settings here. If the site settings are writable
|
||||
you can hit the :guilabel:`Save` button and the settings will be written
|
||||
directly to the site settings.
|
||||
|
||||
If the settings are not writable you can click the :guilabel:`YAML export`
|
||||
button to export the settings. These can then be added by a developer with
|
||||
sufficient rights.
|
||||
|
||||
The available settings are also described in detail in :ref:`site-sets`.
|
||||
@@ -0,0 +1,5 @@
|
||||
base: 'https://example.com/'
|
||||
rootPageId: 1
|
||||
dependencies:
|
||||
- typo3/fluid-styled-content-css
|
||||
+ - typo3/seo-sitemap
|
||||
@@ -0,0 +1,9 @@
|
||||
name: my-vendor/my-site-package
|
||||
label: My Site Package Set
|
||||
settings:
|
||||
website:
|
||||
background:
|
||||
color: '#386492'
|
||||
dependencies:
|
||||
- typo3/fluid-styled-content-css
|
||||
+ - typo3/seo-sitemap
|
||||
@@ -0,0 +1,15 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
|
||||
.. _developer:
|
||||
|
||||
================
|
||||
Developer Corner
|
||||
================
|
||||
|
||||
When you work with a pages-only approach you most likely don't need to use the meta tag APIs. If you have a special
|
||||
edge-case or have a detail view to show a record, you need the APIs to render the corresponding meta information for your
|
||||
page. You can refer to the documentation of the following APIs:
|
||||
|
||||
- The MetaTagApi (see :ref:`t3coreapi:metatagapi`) to define what metatags should be rendered on your page
|
||||
- The PageTitleAPI (see :ref:`t3coreapi:pagetitle`) will give you the possibility to set the title of the page
|
||||
@@ -0,0 +1,152 @@
|
||||
:navigation-title: Features
|
||||
|
||||
.. include:: /Includes.rst.txt
|
||||
.. _features:
|
||||
|
||||
============================================
|
||||
Features of the TYPO3 system extension "seo"
|
||||
============================================
|
||||
|
||||
The TYPO3 system extension :composer:`typo3/cms-seo` offers multiple tools and
|
||||
fields that can be used to improve visibility of a TYPO3 site in search engines:
|
||||
|
||||
.. contents::
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:hidden:
|
||||
|
||||
*
|
||||
|
||||
.. _seo-page-properties:
|
||||
|
||||
Additional tabs "SEO" and "Social media" in the page properties
|
||||
===============================================================
|
||||
|
||||
After `Installation <https://docs.typo3.org/permalink/typo3/cms-seo:installation>`_
|
||||
two additional tabs are available in the page properties.
|
||||
|
||||
SEO
|
||||
This tab contains additional fields for the
|
||||
`title tag <https://docs.typo3.org/permalink/typo3/cms-seo:seo-page-title-provider>`_
|
||||
in the HTML header, for the description meta tag, for robots instruction, the
|
||||
`Canonical URL <https://docs.typo3.org/permalink/typo3/cms-seo:canonical-url>`_
|
||||
and for priorities used in the
|
||||
`XML Sitemap <https://docs.typo3.org/permalink/typo3/cms-seo:xml-sitemap>`_.
|
||||
Social media
|
||||
This tab contains additional fields to manage data for the
|
||||
Open Graph (Facebook) meta tags and the X / Twitter Cards.
|
||||
|
||||
Usage of these additional fields is described in the Editors Tutorial,
|
||||
`Search engine optimization (SEO) for TYPO3 editors <https://docs.typo3.org/permalink/t3editors:seo>`_.
|
||||
|
||||
.. _seo-page-dashboard:
|
||||
|
||||
A Dashboard Widget for SEO
|
||||
==========================
|
||||
|
||||
The extension also offers an additional Dashboard widget.
|
||||
:composer:`typo3/cms-dashboard` needs to be installed. Usage is described in
|
||||
the Editors Tutorial, chapter
|
||||
`Dashboard widgets for Search engine optimization (SEO) in TYPO3 <https://docs.typo3.org/permalink/t3editors:dashboard-widgets>`_.
|
||||
|
||||
If your editors have one of the standard user groups "Editor" or "Advanced Editor",
|
||||
created by the command `typo3 setup:begroups:default` they have permissions to
|
||||
use the widget.
|
||||
|
||||
If you created the use groups manually you users need to have "Dashboard" in
|
||||
their allowed modules and "Pages missing Meta Description" in the
|
||||
allowed dashboard widgets list:
|
||||
`Dashboard manual, permissions of widgets <https://docs.typo3.org/permalink/typo3/cms-dashboard:permission-handling-of-widgets>`_
|
||||
|
||||
.. _xml-sitemap:
|
||||
|
||||
XML Sitemap
|
||||
===========
|
||||
|
||||
The extension :composer:`typo3/cms-seo` comes with the site set
|
||||
`typo3/seo-sitemap <https://docs.typo3.org/permalink/typo3/cms-seo:configuration-site-sets>`_,
|
||||
which you can use to provide an XML sitemap like `https://example.org/sitemap.xml`.
|
||||
|
||||
See chapter `XML sitemap <https://docs.typo3.org/permalink/typo3/cms-seo:xmlsitemap>`_
|
||||
for details.
|
||||
|
||||
.. _canonical-url:
|
||||
|
||||
Canonical URL
|
||||
=============
|
||||
|
||||
When :composer:`typo3/cms-seo` is installed, pages automatically contain a
|
||||
canonical link tag in their HTML head, unless disabled via TypoScript.
|
||||
|
||||
.. code-block:: html
|
||||
:caption: example output of a canonical link in the head of a TYPO3 page
|
||||
|
||||
<head>
|
||||
|
||||
<!-- ... -->
|
||||
|
||||
<link rel="canonical" href="https://example.org/somepage"/>
|
||||
</head>
|
||||
|
||||
You can use the event `ModifyUrlForCanonicalTagEvent <https://docs.typo3.org/permalink/t3coreapi:modifyurlforcanonicaltagevent>`_
|
||||
to provide an alternative canonical URL if needed.
|
||||
|
||||
The API of the canonical link is described in
|
||||
`Canonical API, TYPO3 Explained <https://docs.typo3.org/permalink/t3coreapi:canonicalapi>`_.
|
||||
|
||||
.. warning::
|
||||
If you have other SEO extensions installed that generate canonical links,
|
||||
you have to make sure only one is responsible to embed into your frontend
|
||||
output.
|
||||
|
||||
If both the Core and another extension are generating a canonical link,
|
||||
it will result in 2 canonical links which might cause confusion for search
|
||||
engines.
|
||||
|
||||
.. _seo-page-title-provider:
|
||||
|
||||
SEO page title provider
|
||||
=======================
|
||||
|
||||
While the `Page title API <https://docs.typo3.org/permalink/t3coreapi:pagetitle>`_,
|
||||
providing a `<title>` tag in the HTML head is part of a minimal TYPO3 installation,
|
||||
:composer:`typo3/cms-seo` provides an additional field, `seo_title` in the page
|
||||
properties. The :php:`\TYPO3\CMS\Seo\PageTitle\SeoTitlePageTitleProvider`
|
||||
provides this title as an alternative title for the `<title>` tag.
|
||||
|
||||
The following default TypoScript setup is provided for the page title provider:
|
||||
|
||||
.. code-block:: typoscript
|
||||
|
||||
config.pageTitleProviders {
|
||||
seo {
|
||||
provider = TYPO3\CMS\Seo\PageTitle\SeoTitlePageTitleProvider
|
||||
before = record
|
||||
}
|
||||
}
|
||||
|
||||
.. _seo-meta-tag-provider:
|
||||
|
||||
Additional meta tag handling
|
||||
============================
|
||||
|
||||
While the `MetaTag API <https://docs.typo3.org/permalink/t3coreapi:metatagapi>`_
|
||||
is part of the minimal TYPO3 Core, the meta tag providers for the description
|
||||
meta tag commonly used for search engine optimazation, and the social preview
|
||||
meta tags of Open Graph and Twitter / X are part of :composer:`typo3/cms-seo`.
|
||||
|
||||
.. _seo-hreflang:
|
||||
|
||||
Hreflang tags
|
||||
=============
|
||||
|
||||
:html:`hreflang` link-tags are added automatically for multi-language websites
|
||||
based on the one-tree principle.
|
||||
|
||||
The links are based on the site configuration and depend on translations of a page.
|
||||
|
||||
:html:`hreflang="x-default"` indicates the link of the current page in the default language.
|
||||
|
||||
The value of :html:`hreflang` is set for each language in
|
||||
:guilabel:`Sites > Setup` (see :ref:`t3coreapi:sitehandling-addingLanguages`)
|
||||
@@ -0,0 +1,243 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
.. index:: XML sitemap
|
||||
.. _xmlsitemap:
|
||||
|
||||
===========
|
||||
XML sitemap
|
||||
===========
|
||||
|
||||
:composer:`typo3/cms-seo` provides a ready to use XML sitemap that can be
|
||||
included via `Site sets <https://docs.typo3.org/permalink/typo3/cms-seo:configuration-site-sets>`_
|
||||
(recommended) or include in your TypoScript record.
|
||||
|
||||
.. versionchanged:: 14.0
|
||||
The names of the GET parameters used in the sitemap generated by EXT:seo have
|
||||
been changed from `page` and `sitemap` to `tx_seo[page]` and `tx_seo[sitemap]`
|
||||
respectively.
|
||||
|
||||
If you are overriding the :ref:`automatic routing configuration <xmlsitemap-routing>`,
|
||||
the customized routing needs to be slightly adopted.
|
||||
|
||||
If the templates of `EXT:seo/Resources/Private/Templates/XmlSitemap/Index.xml`
|
||||
have been modified, adopt the generated links to fit the original ones.
|
||||
|
||||
In case the URL to a single sitemap has been provided to a third party tool
|
||||
like a crawler, search engine, ... it must be added again with the new URL.
|
||||
|
||||
.. contents:: Table of Contents
|
||||
:depth: 1
|
||||
:local:
|
||||
|
||||
.. _xmlsitemap-url:
|
||||
|
||||
How to access your XML sitemap
|
||||
==============================
|
||||
|
||||
You can access the sitemaps by visiting `https://example.org/sitemap.xml`.
|
||||
You will first see the sitemap index. By default, there is one sitemap in the
|
||||
index. This is the sitemap for pages.
|
||||
|
||||
.. note::
|
||||
Each site root and language configured in the
|
||||
`Site handling <https://docs.typo3.org/permalink/t3coreapi:sitehandling>`_
|
||||
has its own XML sitemap depending on the entry point.
|
||||
|
||||
**Example:**
|
||||
|
||||
- Entry point `/` - :samp:`https://example.org/sitemap.xml`: for default language
|
||||
- Entry point `/fr/` - :samp:`https://example.org/fr/sitemap.xml`: for French
|
||||
- Entry point `/it/` - :samp:`https://example.org/it/sitemap.xml`: for Italian
|
||||
|
||||
.. _xmlsitemap-routing:
|
||||
|
||||
Automatic routing for the XML sitemap
|
||||
=====================================
|
||||
|
||||
.. versionchanged:: 14.1
|
||||
The SEO extension now ships its sitemap route enhancers as part of
|
||||
the `typo3/seo-sitemap` site set.
|
||||
|
||||
Previously, these route enhancers had to be manually configured in each
|
||||
site's `config.yaml`.
|
||||
|
||||
The SEO extension now ships its sitemap route enhancers as part of
|
||||
the `typo3/seo-sitemap` site set. When this set is used as a dependency,
|
||||
the route enhancers for XML sitemaps are automatically configured.
|
||||
|
||||
This enables clean URLs for sitemaps out of the box:
|
||||
|
||||
* `/sitemap.xml` - Main sitemap index
|
||||
* `/sitemap-type/pages/sitemap.xml` - Pages sitemap
|
||||
|
||||
The routing can be overridden in the projects :file:`config/sites/my-site/config.yaml`
|
||||
and in site sets extending the `typo3/seo-sitemap` site set.
|
||||
|
||||
.. index:: XmlSitemapDataProviders
|
||||
|
||||
|
||||
.. _xmlsitemap-data-providers:
|
||||
|
||||
Data providers for XML sitemaps
|
||||
===============================
|
||||
|
||||
The rendering of sitemaps is based on data providers implementing
|
||||
:php:`\TYPO3\CMS\Seo\XmlSitemap\XmlSitemapDataProviderInterface`.
|
||||
|
||||
:composer:`typo3/cms-seo` ships with the following data providers for XML
|
||||
sitemaps:
|
||||
|
||||
.. _xmlsitemap-data-providers-pages:
|
||||
|
||||
For pages: PagesXmlSitemapDataProvider
|
||||
--------------------------------------
|
||||
|
||||
The :php:`\TYPO3\CMS\Seo\XmlSitemap\PagesXmlSitemapDataProvider` will generate a
|
||||
sitemap of pages based on the detected site root. You can configure whether you
|
||||
have additional conditions for selecting the pages.
|
||||
|
||||
Via setting :ref:`seo.sitemap.pages.excludedDoktypes <typo3/cms-seo:confval-seo-settings-seo-sitemap-pages-excludeddoktypes>`
|
||||
it is possible to exclude certain `Types of pages <https://docs.typo3.org/permalink/t3coreapi:list-of-page-types>`_.
|
||||
|
||||
Additionally, you may exclude page subtrees from the sitemap
|
||||
(for example internal pages). This can be
|
||||
configured using setting
|
||||
:ref:`seo.sitemap.pages.excludePagesRecursive <typo3/cms-seo:confval-seo-settings-seo-sitemap-pages-excludepagesrecursive>`.
|
||||
|
||||
If your site still depend on TypoScript records instead of site sets, you can
|
||||
make these settings via TypoScript constants.
|
||||
|
||||
For special use cases you might want to override the default TypoScript provided
|
||||
by the set.
|
||||
|
||||
.. _xmlsitemap-data-providers-records:
|
||||
|
||||
For database records: RecordsXmlSitemapDataProvider
|
||||
---------------------------------------------------
|
||||
|
||||
If you have an extension installed and want a sitemap of those records, the
|
||||
:php:`\TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider` can be used. The
|
||||
following example shows how to add a sitemap for news records:
|
||||
|
||||
.. literalinclude:: _xmlSitemap/_record.typoscript
|
||||
:caption: EXT:my_extension/Configuration/Sets/XmlSitemapNews/setup.typoscript
|
||||
|
||||
You can add multiple sitemaps and they will be added to the sitemap index
|
||||
automatically. Use different types to have multiple, independent sitemaps:
|
||||
|
||||
.. literalinclude:: _xmlSitemap/_multiple.typoscript
|
||||
:caption: EXT:my_extension/Configuration/Sets/XmlSitemapMultiple/setup.typoscript
|
||||
|
||||
.. _xmlsitemap-changefreq-priority:
|
||||
|
||||
Change frequency and priority
|
||||
=============================
|
||||
|
||||
Change frequencies define how often each page is approximately updated and hence
|
||||
how often it should be revisited (for example: News in an archive are "never"
|
||||
updated, while your home page might get "weekly" updates).
|
||||
|
||||
Priority allows you to define how important the page is compared to other pages
|
||||
on your site. The priority is stated in a value from 0 to 1. Your most important
|
||||
pages can get an higher priority as other pages. This value does not affect how
|
||||
important your pages are compared to pages of other websites. All pages and
|
||||
records get a priority of 0.5 by default.
|
||||
|
||||
The settings can be defined in the TypoScript configuration of an XML sitemap by
|
||||
mapping the properties to fields of the record by using the options
|
||||
:typoscript:`changeFreqField` and :typoscript:`priorityField`.
|
||||
:typoscript:`changeFreqField` needs to point to a field containing string values
|
||||
(see :typoscript:`pages` TCA definition of field
|
||||
:typoscript:`sitemap_changefreq`), :typoscript:`priorityField` needs to point to
|
||||
a field with a decimal value between 0 and 1.
|
||||
|
||||
.. note::
|
||||
Both the priority and the change frequency have no impact on your rankings.
|
||||
These options only give hints to search engines in which order and how often
|
||||
you would like a crawler to visit your pages.
|
||||
|
||||
.. _xmlsitemap-without-sorting:
|
||||
|
||||
Sitemap of records without sorting field
|
||||
========================================
|
||||
|
||||
Sitemaps are paginated by default. To ensure that as few pages of the sitemap
|
||||
as possible are changed after the number of records is changed, the items in the
|
||||
sitemaps are ordered. By default, this is done using a sorting field. If you do
|
||||
not have such a field, make sure to configure this in your sitemap configuration
|
||||
and use a different field. An example you can use for sorting based on the uid
|
||||
field:
|
||||
|
||||
.. literalinclude:: _xmlSitemap/_recordUnsorted.typoscript
|
||||
:caption: EXT:my_extension/Configuration/Sets/XmlSitemapTableWithoutSorting/setup.typoscript
|
||||
|
||||
.. _xmlsitemap-custom-provider:
|
||||
|
||||
Create a custom XML sitemap provider
|
||||
====================================
|
||||
|
||||
If you need more logic in your sitemap, you can also write your own
|
||||
sitemap provider. You can do this by extending the
|
||||
:php:`\TYPO3\CMS\Seo\XmlSitemap\AbstractXmlSitemapDataProvider` class or
|
||||
implementing :php:`\TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider`.
|
||||
|
||||
The main methods of interest are :php:`getLastModified()` and :php:`getItems()`.
|
||||
|
||||
The :php:`getLastModified()` method is used in the sitemap index and has to
|
||||
return the date of the last modified item in the sitemap.
|
||||
|
||||
The :php:`getItems()` method has to return an array with the items for the
|
||||
sitemap:
|
||||
|
||||
.. code-block:: php
|
||||
:caption: EXT:my_extension/Classes/XmlSitemap/MyXmlSitemapProvider.php
|
||||
|
||||
$this->items[] = [
|
||||
'loc' => 'https://example.org/page1.html',
|
||||
'lastMod' => '1536003609'
|
||||
];
|
||||
|
||||
The :php:`loc` element is the URL of the page to be crawled by a search engine.
|
||||
The :php:`lastMod` element contains the date of the last update of the
|
||||
specific item. This value is a UNIX timestamp. In addition, you can include
|
||||
:php:`changefreq` and :php:`priority` as keys in the array to give
|
||||
:ref:`search engines a hint <xmlsitemap-changefreq-priority>`.
|
||||
|
||||
.. _sitemap-xslFile:
|
||||
|
||||
Use a customized sitemap XSL file
|
||||
=================================
|
||||
|
||||
The XSL file used to create a layout for an XML sitemap can be configured at
|
||||
three levels:
|
||||
|
||||
#. For all sitemaps:
|
||||
|
||||
.. code-block:: typoscript
|
||||
:caption: EXT:my_extension/Configuration/TypoScript/setup.typoscript
|
||||
|
||||
plugin.tx_seo.config {
|
||||
xslFile = EXT:my_extension/Resources/Public/CSS/mySite.xsl
|
||||
}
|
||||
|
||||
#. For all sitemaps of a certain sitemapType:
|
||||
|
||||
.. code-block:: typoscript
|
||||
:caption: EXT:my_extension/Configuration/TypoScript/setup.typoscript
|
||||
|
||||
plugin.tx_seo.config.mySitemapType.sitemaps {
|
||||
xslFile = EXT:my_extension/Resources/Public/CSS/mySite.xsl
|
||||
}
|
||||
|
||||
#. For a specific sitemap:
|
||||
|
||||
.. code-block:: typoscript
|
||||
:caption: EXT:my_extension/Configuration/TypoScript/setup.typoscript
|
||||
|
||||
plugin.tx_seo.config.xmlSitemap.sitemaps.myNewsSitemap.config {
|
||||
xslFile = EXT:my_extension/Resources/Public/CSS/mySite.xsl
|
||||
}
|
||||
|
||||
The value is inherited until it is overwritten.
|
||||
|
||||
If no value is specified at all, :file:`EXT:seo/Resources/Public/CSS/Sitemap.xsl`
|
||||
is used as default.
|
||||
@@ -0,0 +1,18 @@
|
||||
routeEnhancers:
|
||||
PageTypeSuffix:
|
||||
type: PageType
|
||||
map:
|
||||
/: 0
|
||||
sitemap.xml: 1533906435
|
||||
Sitemap:
|
||||
type: Simple
|
||||
routePath: 'sitemap-type/{sitemap}'
|
||||
aspects:
|
||||
sitemap:
|
||||
type: StaticValueMapper
|
||||
map:
|
||||
pages: pages
|
||||
tx_news: tx_news
|
||||
my_other_sitemap: my_other_sitemap
|
||||
_arguments:
|
||||
sitemap: 'tx_seo/sitemap'
|
||||
@@ -0,0 +1,30 @@
|
||||
seo_googlenews < seo_sitemap
|
||||
seo_googlenews.typeNum = 1571859552
|
||||
seo_googlenews.10.sitemapType = googleNewsSitemap
|
||||
|
||||
plugin.tx_seo {
|
||||
config {
|
||||
xmlSitemap {
|
||||
sitemaps {
|
||||
news {
|
||||
provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
|
||||
config {
|
||||
# ...
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
googleNewsSitemap {
|
||||
sitemaps {
|
||||
news {
|
||||
provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
|
||||
config {
|
||||
googleNews = 1
|
||||
# ...
|
||||
template = GoogleNewsXmlSitemap.xml
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
plugin.tx_seo {
|
||||
config {
|
||||
xmlSitemap {
|
||||
sitemaps {
|
||||
myNewsSitemap {
|
||||
provider = TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider
|
||||
config {
|
||||
table = news_table
|
||||
sortField = sorting
|
||||
lastModifiedField = tstamp
|
||||
changeFreqField = news_changefreq
|
||||
priorityField = news_priority
|
||||
additionalWhere = AND ({#no_index} = 0 OR {#no_follow} = 0)
|
||||
pid = <page id('s) containing news records>
|
||||
recursive = <number of subpage levels taken into account beyond the pid page. (default: 0)>
|
||||
url {
|
||||
pageId = <your detail page id>
|
||||
fieldToParameterMap {
|
||||
uid = tx_extension_pi1[news]
|
||||
}
|
||||
additionalGetParameters {
|
||||
tx_extension_pi1.controller = News
|
||||
tx_extension_pi1.action = detail
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
plugin.tx_seo {
|
||||
config {
|
||||
xmlSitemap {
|
||||
sitemaps {
|
||||
myUnsortedTable {
|
||||
config {
|
||||
sortField = uid
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 19 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 46 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 117 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 116 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 152 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 106 KiB |
@@ -0,0 +1 @@
|
||||
.. You can put central messages to display on all pages here
|
||||
@@ -0,0 +1,63 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _start:
|
||||
|
||||
================================
|
||||
TYPO3 Search Engine Optimization
|
||||
================================
|
||||
|
||||
:Extension key:
|
||||
seo
|
||||
|
||||
:Package name:
|
||||
typo3/cms-seo
|
||||
|
||||
:Version:
|
||||
|release|
|
||||
|
||||
:Language:
|
||||
en
|
||||
|
||||
:Author:
|
||||
TYPO3 contributors
|
||||
|
||||
:License:
|
||||
This document is published under the
|
||||
`Open Content License <https://www.openhub.net/licenses/opl>`__.
|
||||
|
||||
:Rendered:
|
||||
|today|
|
||||
|
||||
----
|
||||
|
||||
This extension offers special fields for search engine optimization (SEO)
|
||||
purposes, HTML meta tags display and sitemaps.
|
||||
|
||||
General information on topics about SEO can be found in
|
||||
:ref:`Search engine optimization (SEO) <t3coreapi:seo>`.
|
||||
|
||||
Information for editors, including how to use the
|
||||
`dashboard widgets <https://docs.typo3.org/permalink/t3editors:dashboard-widgets>`_
|
||||
can be found in
|
||||
`Tutorial for Editors, Search engine optimization (SEO) for TYPO3 editors <https://docs.typo3.org/permalink/t3editors:seo>`_.
|
||||
|
||||
----
|
||||
|
||||
**Table of Contents:**
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:titlesonly:
|
||||
|
||||
Introduction/Index
|
||||
Installation/Index
|
||||
Features/Index
|
||||
Configuration/Index
|
||||
Developer/Index
|
||||
|
||||
.. Meta Menu
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
Sitemap
|
||||
@@ -0,0 +1,54 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _installation:
|
||||
|
||||
============
|
||||
Installation
|
||||
============
|
||||
|
||||
Target group: **Administrators**
|
||||
|
||||
This extension is part of the TYPO3 Core.
|
||||
|
||||
.. contents:: Table of contents
|
||||
:local:
|
||||
|
||||
Installation with Composer
|
||||
==========================
|
||||
|
||||
Check whether you are already using the extension with:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
composer show | grep seo
|
||||
|
||||
This should either give you no result or something similar to:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
typo3/cms-seo v12.4.11
|
||||
|
||||
If it is not installed yet, use the ``composer require`` command to install
|
||||
the extension:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
composer require typo3/cms-seo
|
||||
|
||||
The given version depends on the version of the TYPO3 Core you are using.
|
||||
|
||||
Installation without Composer
|
||||
=============================
|
||||
|
||||
In an installation without Composer, the extension is already shipped but might
|
||||
not be activated yet. Activate it as follows:
|
||||
|
||||
#. In the backend, navigate to the :guilabel:`System > Extensions`
|
||||
module.
|
||||
#. Click the :guilabel:`Activate` icon for the SEO extension.
|
||||
|
||||
.. figure:: /Images/InstallActivate.png
|
||||
:class: with-border
|
||||
:alt: Extension manager showing SEO extension
|
||||
|
||||
Extension manager showing SEO extension
|
||||
@@ -0,0 +1,29 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
|
||||
.. _introduction:
|
||||
|
||||
============
|
||||
Introduction
|
||||
============
|
||||
|
||||
The goal of the Core extension :composer:`typo3/cms-seo` is to make sure basic
|
||||
technical Search Engine Optimization (SEO) is done right out of the box.
|
||||
Specific fields for SEO purposes are added, as well as the rendering of HTML
|
||||
meta tags in the frontend.
|
||||
|
||||
There are several things you can do to optimize your site for search engines.
|
||||
Some tasks are only solvable with good human writers, others are technical
|
||||
tasks, which need to be implemented.
|
||||
|
||||
The goal of the extension `seo` is to help you with the following parts of
|
||||
your SEO journey.
|
||||
|
||||
* Give editors all the fields needed to set the necessary meta tags.
|
||||
* Provide the rendering of meta tags in the frontend for SEO related
|
||||
information, to avoid reimplementing it again and again.
|
||||
* Provide stable APIs for developers to give them the chance to change the
|
||||
behaviour when needed in edge cases.
|
||||
|
||||
For a list of the features provided by this extension see
|
||||
`Features of the TYPO3 system extension "seo" <https://docs.typo3.org/permalink/typo3/cms-seo:features>`_.
|
||||
@@ -0,0 +1,9 @@
|
||||
:template: sitemap.html
|
||||
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
=======
|
||||
Sitemap
|
||||
=======
|
||||
|
||||
.. The sitemap.html template will insert here the page tree automatically.
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<guides xmlns="https://www.phpdoc.org/guides" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="https://www.phpdoc.org/guides ../vendor/phpdocumentor/guides-cli/resources/schema/guides.xsd"
|
||||
links-are-relative="true">
|
||||
<extension class="\T3Docs\Typo3DocsTheme\DependencyInjection\Typo3DocsThemeExtension"
|
||||
project-home="https://extensions.typo3.org/extension/seo/"
|
||||
project-contact="https://typo3.slack.com/archives/C025BQLFA"
|
||||
project-repository="https://github.com/typo3/typo3"
|
||||
project-issues="https://forge.typo3.org/projects/typo3cms-core/issues"
|
||||
edit-on-github-branch="main"
|
||||
edit-on-github="typo3/typo3"
|
||||
edit-on-github-directory="typo3/sysext/seo/Documentation/"
|
||||
typo3-core-preferred="main"
|
||||
interlink-shortcode="typo3/cms-seo"
|
||||
/>
|
||||
<project title="SEO"
|
||||
release="main (development)"
|
||||
version="main (development)"
|
||||
copyright="since 2018 by the TYPO3 contributors"
|
||||
/>
|
||||
</guides>
|
||||
Reference in New Issue
Block a user