Diferencia entre revisiones de «MediaWiki:Common.js»
De Enciclopedia Católica
| (No se muestran 4 ediciones intermedias del mismo usuario) | |||
| Línea 1: | Línea 1: | ||
| − | /* | + | /* Script completo para cargar Parse.ly y metadatos enriquecidos */ |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | (function ( | + | document.addEventListener('DOMContentLoaded', function () { |
| − | // | + | // Parse.ly loader |
| − | (function( | + | (function(w, d) { |
| − | + | w.Parsely = w.Parsely || function() { | |
| − | + | (w.Parsely.q = w.Parsely.q || []).push(arguments); | |
| − | + | }; | |
| − | })(window, document | + | var s = d.createElement('script'); |
| + | s.async = true; | ||
| + | s.src = 'https://cdn.parsely.com/keys/ec.aciprensa.com/p.js'; | ||
| + | var x = d.getElementsByTagName('script')[0]; | ||
| + | x.parentNode.insertBefore(s, x); | ||
| + | })(window, document); | ||
| − | // | + | // JSON-LD + Meta + JS fallback |
| − | mw.loader.using('mediawiki.util', function () { | + | if (typeof mw !== 'undefined') { |
| − | + | mw.loader.using('mediawiki.util', function () { | |
| − | + | const namespace = mw.config.get('wgNamespaceNumber'); | |
| + | const title = mw.config.get('wgTitle'); | ||
| + | const url = window.location.href; | ||
| + | const datePublished = new Date(document.lastModified).toISOString(); | ||
| + | const categories = mw.config.get('wgCategories') || []; | ||
| + | const isMainPage = mw.config.get('wgIsMainPage'); | ||
| − | + | const type = isMainPage ? "WebSite" : "NewsArticle"; | |
| − | + | const section = categories.length ? categories[0] : "General"; | |
| − | + | const keywords = categories; | |
| − | + | const author = "Enciclopedia Católica"; | |
| − | + | const publisher = { | |
| + | "@type": "Organization", | ||
| + | "name": "ACI Prensa", | ||
| + | "logo": { | ||
| + | "@type": "ImageObject", | ||
| + | "url": "https://ec.aciprensa.com/newwiki/images/ACI_logo.png" | ||
| + | } | ||
| + | }; | ||
| − | + | const metadata = { | |
| − | + | "@context": "http://schema.org", | |
| − | + | "@type": type, | |
| − | + | "headline": title, | |
| − | + | "url": url, | |
| − | + | "author": { "name": author }, | |
| − | + | "datePublished": datePublished, | |
| − | + | "articleSection": section, | |
| − | + | "keywords": keywords, | |
| + | "publisher": publisher, | ||
| + | "mainEntityOfPage": url | ||
| + | }; | ||
| + | |||
| + | // Insert JSON-LD | ||
| + | const jsonLd = document.createElement('script'); | ||
| + | jsonLd.type = 'application/ld+json'; | ||
| + | jsonLd.text = JSON.stringify(metadata); | ||
| + | document.head.appendChild(jsonLd); | ||
| + | |||
| + | // Insert <meta name="parsely-page"> | ||
| + | const meta = document.createElement('meta'); | ||
| + | meta.name = 'parsely-page'; | ||
| + | meta.content = JSON.stringify({ | ||
| + | title: title, | ||
| + | link: url, | ||
| + | type: 'post', | ||
| + | pub_date: datePublished, | ||
| + | section: section, | ||
| + | author: author | ||
| + | }); | ||
| + | document.head.appendChild(meta); | ||
| + | |||
| + | // JS fallback config | ||
| + | window.PARSELY = window.PARSELY || {}; | ||
| + | window.PARSELY.autotrack = true; | ||
| + | window.PARSELY.page = { | ||
| + | title: title, | ||
| + | link: url, | ||
| + | type: 'post', | ||
| + | pub_date: datePublished, | ||
| + | section: section, | ||
| + | author: author | ||
| + | }; | ||
| − | + | console.log("✅ Parse.ly: metadata inserted", { | |
| − | + | jsonLd: metadata, | |
| − | + | parselyMeta: meta.content | |
| − | + | }); | |
| − | } | + | }); |
| − | } | + | } |
| + | }); | ||
Última revisión de 23:46 21 may 2025
/* Script completo para cargar Parse.ly y metadatos enriquecidos */
document.addEventListener('DOMContentLoaded', function () {
// Parse.ly loader
(function(w, d) {
w.Parsely = w.Parsely || function() {
(w.Parsely.q = w.Parsely.q || []).push(arguments);
};
var s = d.createElement('script');
s.async = true;
s.src = 'https://cdn.parsely.com/keys/ec.aciprensa.com/p.js';
var x = d.getElementsByTagName('script')[0];
x.parentNode.insertBefore(s, x);
})(window, document);
// JSON-LD + Meta + JS fallback
if (typeof mw !== 'undefined') {
mw.loader.using('mediawiki.util', function () {
const namespace = mw.config.get('wgNamespaceNumber');
const title = mw.config.get('wgTitle');
const url = window.location.href;
const datePublished = new Date(document.lastModified).toISOString();
const categories = mw.config.get('wgCategories') || [];
const isMainPage = mw.config.get('wgIsMainPage');
const type = isMainPage ? "WebSite" : "NewsArticle";
const section = categories.length ? categories[0] : "General";
const keywords = categories;
const author = "Enciclopedia Católica";
const publisher = {
"@type": "Organization",
"name": "ACI Prensa",
"logo": {
"@type": "ImageObject",
"url": "https://ec.aciprensa.com/newwiki/images/ACI_logo.png"
}
};
const metadata = {
"@context": "http://schema.org",
"@type": type,
"headline": title,
"url": url,
"author": { "name": author },
"datePublished": datePublished,
"articleSection": section,
"keywords": keywords,
"publisher": publisher,
"mainEntityOfPage": url
};
// Insert JSON-LD
const jsonLd = document.createElement('script');
jsonLd.type = 'application/ld+json';
jsonLd.text = JSON.stringify(metadata);
document.head.appendChild(jsonLd);
// Insert <meta name="parsely-page">
const meta = document.createElement('meta');
meta.name = 'parsely-page';
meta.content = JSON.stringify({
title: title,
link: url,
type: 'post',
pub_date: datePublished,
section: section,
author: author
});
document.head.appendChild(meta);
// JS fallback config
window.PARSELY = window.PARSELY || {};
window.PARSELY.autotrack = true;
window.PARSELY.page = {
title: title,
link: url,
type: 'post',
pub_date: datePublished,
section: section,
author: author
};
console.log("✅ Parse.ly: metadata inserted", {
jsonLd: metadata,
parselyMeta: meta.content
});
});
}
});
