Extensión:WikiSEO
![]() Estado de la versión: estable |
|
---|---|
Implementación | Función del analizador |
Descripción | Permite añadir elementos meta comunes como parte de la optimización para motores de búsqueda (SEO) |
Autor(es) | Octfxdiscusión |
Mantenedor(es) | Octfx |
Última versión | 2.7.0 (2023-06-29) |
MediaWiki | 1.39+ |
PHP | 7.4+ |
Composer | octfx/wiki-seo |
Licencia | Licencia Pública General de GNU 2.0 o posterior |
Descargar | |
|
|
Descargas trimestrales | 92 (Ranked 40th) |
Traduce la extensión WikiSEO si está disponible en translatewiki.net | |
Incidentes | Tareas abiertas · Reportar un error |
La extensión WikiSEO le permite reemplazar, agregar o prependiendo el contenido de la etiqueta de título HTML. También le permite agregar meta elementos comunes de SEO (Search Engine Optimization) como "palabras clave" y "descripción".
Para que esta extensión funcione, es absolutamente necesario una cola de trabajo.
Instalación
- Descarga y mueve la carpeta
WikiSEO
extraída a tu directorioextensions/
.
Los desarrolladores y contribuidores de código deberían instalar la extensión desde Git en su lugar, usando:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/WikiSEO - Añade el siguiente código en la parte final de tu archivo LocalSettings.php :
wfLoadExtension( 'WikiSEO' );
- Configúrelo según sea necesario.
- Hecho – Navega a Special:Version en el wiki para verificar que la extensión se haya instalado correctamente.
Uso
La extensión se puede utilizar a través de la función de parser {{#seo}}
o en módulos Lua usando mw.ext.seo.set()
.
Acepta los siguientes parámetros con nombre en cualquier orden.
Parámetros compatibles con todos los generadores
Nombre | Predeterminado | Descripción | Ejemplo |
---|---|---|---|
title | (empty)
|
El título que desea aparecer en la etiqueta de título de HTML. También se utilizará para OpenGraph, Schema.org y metadatos de Twitter. | {{#seo:|title=This is the title of the page}} |
title_mode | replace | Configurar para agregar, preponer o reemplazar (por defecto) para definir cómo se modificará el título. Se pueden encontrar más ejemplos aquí. | {{#seo:|title=This replaces the Title of the Page|title_mode=replace}} |
title_separator | -
|
El separador en caso de que title_mode se establezca para añadir o prependir.
|
{{#seo:|title=This gets prepended to the page name separated by the separator|title_mode=prepend|title_separator=<<}} |
keywords | (empty)
|
Una coma separada lista de palabras clave que describen el contenido de la página. También se utilizará para OpenGraph, Schema.org y metadatos de Twitter. | {{#seo:|keywords=Apple, Pears, Oranges}} |
description | (empty)
|
Un texto corto que describe el tema de la página. También se utilizará para OpenGraph, Schema.org y metadatos de Twitter. | {{#seo:|description=This page contains information about...}} |
Parámetros soportados por Generador de Metatag
Nombre | Predeterminado | Descripción | Ejemplo |
---|---|---|---|
robots | (empty) |
Controla el comportamiento de rastreo y indexación en los motores de búsqueda | {{#seo:|robots=noindex, nofollow}} |
googlebot | (empty) |
Controla el comportamiento del rastreador de Google | {{#seo:|googlebot=noindex, nofollow}} |
hreflang_xx-xx | (empty)
|
Añade elementos de <link rel="alternate" href="url" hreflang="xx-xx">
|
{{#seo:|hreflang_de-de=https://example.com}} |
Parámetros compatibles con el generador OpenGraph / Twitter
Nombre | Default | Descripción | Ejemplo |
---|---|---|---|
type | (empty)
|
El tipo de su objeto, por ejemplo, "video.movie". Dependiendo del tipo que especifique, también pueden requerirse otras propiedades. | {{#seo:|type=website}} |
image | (empty)
|
Una URL de imagen que debe representar su objeto dentro del gráfico. La extensión añadirá automáticamente la URL, ancho y altura de la imagen adecuada si se establece un nombre de imagen como parámetro. Ejemplo image = Local_file_to_use.png .Alternativamente se puede utilizar una URL completa de una imagen, image_width y image_height deberán ser configurados manualmente.Si se establece el parámetro no, la extensión usará $wgLogo como fallback o el archivo local establecido a través de $wgWikiSeoDefaultImage .
|
{{#seo:|image=Local_File.png}} |
image_width | (empty)
|
El ancho de la imagen en px. (Automáticamente se establece si un nombre de imagen está establecido en image )
|
{{#seo:|image_width=420}} |
image_height | (empty)
|
La altura de la imagen en px. (Automáticamente se establece si un nombre de imagen está establecido en image )
|
{{#seo:|image_height=69}} |
image_alt | (empty) |
Una breve frase que describe la imagen | {{#seo:|image_alt=A picture showing an orange cat.}} |
locale | (empty)
|
El lugar en el que están marcadas estas etiquetas. del formato language_TERRITORY. | {{#seo:|locale=en-US}} |
site_name | (empty)
|
Si su objeto es parte de un sitio web más grande, el nombre que debe mostrarse para el sitio en general. Por ejemplo, "IMDb". | {{#seo:|site_name=WMF}} |
Parámetros con type=article soportados por el generador OpenGraph
Veamos type=article
.[1]
Nombre | Default | Descripción | Ejemplo |
---|---|---|---|
author | (empty)
|
Los autores del artículo. | {{#seo:|author=Jon Doe}} |
section | (empty)
|
Un nombre de sección de alto nivel. Por ejemplo, la tecnología | {{#seo:|section=Technology}} |
published_time | (empty)
|
Cuando se publicó el artículo. El formato ISO 8601. | {{#seo:|published_time=2012-01-25}} |
Parámetros soportados por el generador de Twitter
See OpenGraph Tags.[2]
Nombre | Default | Descripción | Ejemplo |
---|---|---|---|
twitter_site | (empty)
|
Si no has no establecido un nombre global de sitio a través de $wgTwitterSiteHandle , puedes establecer un dominio de sitio por página. Si se establece un manejo global de sitio, esta clave será ignorada.
|
{{#seo:|twitter_site=MediaWiki}} |
Parámetros compatibles con el generador de citas
Veamos Schema.org.[3]
Nombre | Default | Descripción | Ejemplo |
---|---|---|---|
citation_type | ScholarlyArticle
|
Se utiliza en @graph @type | {{#seo:|citation_type=MedicalScholarlyArticle}} |
citation_name | (empty)
|
Nombre de la publicación | {{#seo:|citation_name=Cataloging & Classification Quarterly}} |
citation_headline | (empty)
|
Título del artículo. | {{#seo:|citation_headline=Works in Cataloging}} |
citation_date_published | (empty)
|
Fecha de la primera emisión/publicación. | {{#seo:|citation_date_published=2012-01-01}} |
citation_date_created | (empty)
|
La fecha en que se creó el CreativeWork o el elemento se añadió a un DataFeed .
|
{{#seo:|citation_date_created=2012-01-01}} |
citation_page_start | (empty)
|
La página en la que comienza el trabajo; por ejemplo, "135" o "xiii". | {{#seo:|citation_page_start=135}} |
citation_doi | (empty)
|
URL de una página web de referencia que indique de manera inequívoca la identidad del artículo. Por ejemplo, la URL de la página de Wikipedia del artículo, la entrada de Wikidata o el sitio web oficial. | {{#seo:|citation_doi=http://dx.doi.org/10.1038/nphys1170}} |
citation_author | (empty)
|
Uno o más autores separados por ;
|
{{#seo:|citation_author=Doe, John; Bar, Foo}} |
citation_publisher | (empty)
|
Nombre del editor | {{#seo:|citation_journal_title=Elsevir}} |
citation_license | (empty)
|
Un documento de licencia que se aplica a este contenido, típicamente indicado por URL. | {{#seo:|citation_license=link}} |
citation_volume | (empty)
|
Número de volumen | {{#seo:|citation_volume=50}} |
keywords | (empty)
|
Artículo Palabras clave(*) | {{#seo:|citation_keywords=Keyword a; Keyword b; ...}} |
description | (empty)
|
Descripción del artículo(*) | {{#seo:|description=An article about cataloging}} |
(*) estos parámetros son compatibles con todos los generadores.
Tenga en cuenta que el generador de citas está no activado por defecto!
Para activar el generador añadir el siguiente fragmento a LocalSettings.php
:
$wgMetadataGenerators[] = "Citation";
Ejemplos
Añadir valores estáticos
{{#seo: |title=Your page title |title_mode=append |keywords=these,are,your,keywords |description=Your meta description |image=Uploaded_file.png |image_alt=Wiki Logo }}
Añadir valores dinámicos
Si necesita incluir variables o plantillas, debe utilizar la función de parser para asegurarse de que se analicen correctamente. Esto le permite usar Cargo o Semantic MediaWiki , con Page Forms , para la entrada de datos, o para la creación programática de un título de página a partir de variables o contenido existentes...
{{#seo: |title={{#if: {{{page_title|}}} | {{{page_title}}} | Welcome to WikiSEO}} |title_mode={{{title_mode|}}} |keywords={{{keywords|}}} |description={{{description|}}} |published_time={{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}} }}
{{#seo: |title_mode=append |title=Example SEO Wiki |keywords=WikiSEO, SEO, MediaWiki |description=An example description for this wiki |image=Wiki_Logo.png |image_alt=Wiki Logo |site_name=Example SEO Wiki |locale=en_EN |type=website |modified_time={{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}} |published_time=2020-11-01 }}
Uso en módulos Lua
-- Module:SEO
local seo = {}
--[[
argTable format:
{
title_mode = 'append',
title = 'Example Seo Wiki',
keywords = 'WikiSEO, SEO, MediaWiki',
-- ...
}
]]--
function seo.set( argTable )
mw.ext.seo.set( argTable )
end
function seo.setStatic()
mw.ext.seo.set{
title_mode = 'append',
title = 'Example Seo Wiki',
keywords = 'WikiSEO, SEO, MediaWiki',
}
end
return seo
El módulo ahora sería llamable como {{#invoke:SEO|set|title=ExampleTitle|keywords=WikiSEO, SEO, MediaWiki}}
o {{#invoke:SEO|setStatic}}
.
Atributos Hreflang
{{#seo: |hreflang_de-de=https://example.de/page |hreflang_nl-nl=https://example.nl/page-nl |hreflang_en-us=https://website.com/ }}
Generará los siguientes elementos <link>
:
<link rel="alternate" href="https://example.de/page" hreflang="de-de">
<link rel="alternate" href="https://example.nl/page-nl" hreflang="nl-nl">
<link rel="alternate" href="https://website.com/" hreflang="en-us">
Modos de título
Ejemplo: Página con título Example Page
Append
{{#seo: |title_mode=append |title=Appended Title }}
Resultado del título HTML:
Example Page - Appended Title
Prepend
{{#seo: |title_mode=prepend |title=Prepended Title }}
Resultado del título HTML:
Prepended Title - Example Page
Prepend (separador cambiado)
{{#seo: |title_mode=prepend |title=Prepended Title |title_separator= >> }}
Resultado del título HTML:
Prepended Title >> Example Page
Replace (por defecto)
{{#seo: |title_mode=replace |title=Replaced Title }}
Resultado del título HTML:
Replaced Title
Escrito de mantenimiento
WikiSEO proporciona un script de mantenimiento para generar descripciones para páginas especificadas.
Este script requiere Extensión:TextExtracts para ser instalado y activo.
El script sólo generará descripciones para páginas que no tienen una propiedad de description
establecida en la tabla de propiedades de la página.
Puedes forzar la generación usando la bandera de --force
, esto superescribirá cualquier descripción ya presente.
Se debe dar una lista de id de namespace para que el script funcione:
# Sólo ejecuta en el espacio de nombres principal php maintenance/run.php ./extensions/WikiSEO/maintenance/GenerateDescription.php 0 # Sólo ejecuta en el espacio de nombres principal y sobrescriba las descripciones existentes php maintenance/run.php ./extensions/WikiSEO/maintenance/GenerateDescription.php --force 0 # Ejecutar en el espacio de nombres 1234, sobrescribir las descripciones y eliminar las oraciones colgantes php maintenance/run.php ./extensions/WikiSEO/maintenance/GenerateDescription.php --force --cleanSentence 1234
Configuración
Las siguientes variables son utilizadas por esta extensión.
Variable | Descripción | Uso |
---|---|---|
$wgGoogleSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="google-site-verification" content="CODE"> a cada página.
|
$wgGoogleSiteVerificationKey = 'CODE'; |
$wgBingSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="msvalidate.01" content="CODE"> a cada página.
|
$wgBingSiteVerificationKey= 'CODE'; |
$wgFacebookAppID | La configuración de esta variable añadirá una etiqueta de <meta property="fb:app_id" content="ID"> a cada página.
|
$wgFacebookAppID= 'App_ID'; |
$wgFacebookAdmins | La configuración de esta variable añadirá una etiqueta de <meta property="fb:admins" content="ID1,ID2,..."> a cada página.
|
$wgFacebookAdmins= 'ID1,ID2,...'; |
$wgYandexSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="yandex-verification" content="CODE"> a cada página.
|
$wgYandexSiteVerificationKey= 'CODE'; |
$wgAlexaSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="alexaVerifyID" content="CODE"> a cada página.
|
$wgAlexaSiteVerificationKey= 'CODE'; |
$wgPinterestSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="p:domain_verify" content="CODE"> a cada página.
|
$wgPinterestSiteVerificationKey= 'CODE'; |
$wgNortonSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="norton-safeweb-site-verification" content="CODE"> a cada página.
|
$wgNortonSiteVerificationKey= 'CODE'; |
$wgNaverSiteVerificationKey | La configuración de esta variable añadirá una etiqueta de <meta name="naver-site-verification" content="CODE"> a cada página.
|
$wgNaverSiteVerificationKey = 'CODE'; |
$wgWikiSeoDefaultImage
Configurar una imagen predeterminada para usar si no hay imagen establecida en el sitio. Si esta variable no está configurada, se utilizará el logotipo del sitio.
Usa:
$wgWikiSeoDefaultImage= 'Localfile.jpg';
$wgMetadataGenerators
Array que contiene los nombres del generador de metadatos para cargar.
Por defecto:
["OpenGraph", "Twitter", "SchemaOrg"]
Si sólo desea cambiar el título de la página y añadir 'descripción', 'palabras clave', 'robots' etiquetas de $wgMetadataGenerators = [];
$wgWikiSeoDisableLogoFallbackImage
Deshabilitar la configuración de $wgLogo como una imagen de retroceso si no se ha establecido ninguna imagen para una página.
$wgTwitterCardType
Default para `summary_large_image` para el tipo de tarjeta de twitter.
Uso: $wgTwitterCardType = 'summary';
$wgWikiSeoNoindexPageTitles
Una matriz de títulos de páginas donde se debe añadir una etiqueta de robot 'noindex'. Uso: $wgWikiSeoNoindexPageTitles = [ 'Custom_Title', 'Main_Page' ];
$wgWikiSeoDefaultLanguage
Un código de idioma predeterminado con área para generar un <link rel="alternate" href="current Url" hreflang="xx-xx">
para.
Uso: $wgWikiSeoDefaultLanguage = 'de-de';
$wgWikiSeoEnableAutoDescription
Si no se dio ninguna descripción en la función de parser, se solicitará una breve descripción de Extensión:TextExtracts .
Una descripción sólo se establecerá si la página se edita y se guarda.
Alternativamente, el script de mantenimiento GenerateDescription
se puede ejecutar desde la carpeta de extensiones.
$wgWikiSeoTryCleanAutoDescription
Intentó eliminar frases colgantes de la descripción proporcionada por TextExtracts. Esto eliminará la última frase que no termina en un '.', y resultará en descripciones menores a 160 caracteres.
Variable | Descripción | Uso |
---|---|---|
$wgWikiSeoEnableSocialImages | Generar iconos de redes sociales dedicados para las páginas | $wgWikiSeoEnableSocialImages = true; |
$wgWikiSeoSocialImageIcon | El icono/marca de agua para añadir a la imagen de las redes sociales. Utilice un nombre de archivo local | $wgWikiSeoSocialImageIcon = LocalFile.jpg; |
$wgWikiSeoSocialImageWidth | Ancho de la imagen de las redes sociales | $wgWikiSeoSocialImageWidth = 1200; |
$wgWikiSeoSocialImageHeight | Alteza de la imagen en las redes sociales | $wgWikiSeoSocialImageHeight = 620; |
$wgWikiSeoSocialImageTextColor | El color del texto en la imagen social | $wgWikiSeoSocialImageTextColor = '#fff'; |
$wgWikiSeoSocialImageShowAuthor | Muestre el autor de la revisión de la página actual | $wgWikiSeoSocialImageShowAuthor = true; |
$wgWikiSeoSocialImageShowLogo | Muestre el logotipo de Wiki en la esquina superior derecha | $wgWikiSeoSocialImageShowLogo = true; |
$wgWikiSeoSocialImageBackgroundColor | Color de fondo predeterminado si no se encuentra imagen de página | $wgWikiSeoSocialImageBackgroundColor = '#ff00ff'; |
Migración de la versión 1.2.2 a la versión 2.x
Se han eliminado las etiquetas
- DC.date.created
- DC.date.issued
- name
- og:title (se fija automáticamente)
- og:url (se fija automáticamente)
- twitter:card (se fija automáticamente)
- twitter:creator
- twitter:domain
- article:modified_time / og:updated_time (se fija automáticamente)
Se han eliminado los alias
- metakeywords / metak
- use keywords instead
- metadescription / metad
- use description instead
- titlemode / title mode
- use title_mode instead
Cambió el nombre de los argumentos
- article:author -> author
- article:section -> section
- article:tag -> keywords
- article:published_time -> published_time
- og:image / twitter:image:src -> image
- og:image:width -> image_width
- og:image:height -> image_height
- og:locale -> locale
- og:site_name -> site_name
- og:title -> title
- og:type -> type
- twitter:description -> description
Cuestiones conocidas
Extension:PageImages añadirá una etiqueta de og:image
si se encuentra una imagen en la página.
Si se ha configurado otra imagen usando WikiSEO, se añadirán ambas og:image
a la página.
Más información:
Configurar $wgPageImagesOpenGraph = false;
desactiva las imágenes de página que configuran cualquier meta etiqueta de og:image*
Además, puede establecer $wgWikiSeoOverwritePageImage = true;
para sobrescribir la imagen establecida en PageImages con la especificada en WikiSEO.
Más detalles
Esta extensión es no un reemplazo de entrada de la versión anterior de esta extensión de tinymighty/wiki-seo.
Si sólo desea anotar el título de la pantalla en las páginas (no agregar palabras a ella), también puede ver la etiqueta DISPLAYTITLE en combinación con las configuraciones Manual:$wgAllowDisplayTitle y Manual:$wgRestrictDisplayTitle .
Tenga en cuenta que esta extensión almacena propiedades relevantes en la tabla de page_props. Su gancho de parser persiste propiedades anteriores cuando se invoca desde que comite 78245b3 (liberado en v2.6.6). This enables administrators to set these properties manually with other tools like Extension:PageProperties . Por otro lado, los parámetros eliminados de la llamada de función del parser persistirán en la página. Estas propiedades obsoletas pueden ser purgadas eliminando temporalmente las palabras mágicas o desactivando la extensión, luego replantear la página.
schema.org
The SchemaOrg
generator will set a SearchAction property based on Special:Search.[4]
Las propiedades editor y autor se establecerán en Organization
, con el nombre establecido para el contenido de $wgSitename
.
dateModified
se establecerá automáticamente obteniendo el último sello de tiempo de revisión.
Si no se establece published_time
se establecerá datePublished
en el último sello de tiempo de revisión.
OpenGraph
article:modified_time
se establecerá automáticamente obteniendo el último sello de tiempo de revisión.
Si no se establece published_time
se establecerá article:published_time
en el último sello de tiempo de revisión.
Integración
WikiSEO utilizará las descripciones proporcionadas por Extension:Description2 .
Nota
Véase también
- Extension:Description2
- Extension:MetaMaster
- Extension:Semantic Meta Tags
- Extension:AdvancedMeta
- Extension:PageProperties
Esta extensión está incluida en los siguientes anfitriones/granjas wiki y/o paquetes: No se trata de una lista oficial. Algunas granjas/hosts wiki y/o paquetes pueden tener disponible esta extensión aunque no estén listados aquí. Siempre compruébelo con su anfitrión o granja wiki para confirmarlo. |