feat(#8): buscador avanzado nativo (FULLTEXT + filtros)
Replica el «Buscador avanzado» del Joomla viejo sin servicios externos: - fea-search-fulltext.php: motor MySQL FULLTEXT (MATCH AGAINST, Boolean Mode, orden por relevancia); comprueba que existe el índice fea_ft y degrada al buscador nativo si no, sin romper. - fea-search-advanced.php: formulario con filtros por autor, categoría (lista curada de secciones), cita bíblica (meta _cita_evangelio por prefijo) y rango de fechas; pre_get_posts, chips de filtros, byline en tarjetas, i18n es/en/fr/it/pt. Excluye pseudo-autores «Testamento». - create_buscar_page.php: crea la página /buscar + traducciones (idempotente). - tools/e2e: suite Playwright de verificación. Desplegado y verificado en prod (índice fea_ft + página /buscar + traducciones). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
const { chromium } = require('playwright');
|
||||
(async () => {
|
||||
const b = await chromium.launch();
|
||||
// Resultados (desktop)
|
||||
let r = await b.newPage({ viewport: { width: 1280, height: 1200 } });
|
||||
await r.goto('http://localhost:8081/?s=oraci%C3%B3n', { waitUntil: 'networkidle' });
|
||||
await r.screenshot({ path: '/tmp/claude-1000/res_desktop.png', clip:{x:0,y:180,width:1280,height:880} });
|
||||
// Desktop 800 ancho: barra NO debe verse (solo el Buscador del menú)
|
||||
let d = await b.newPage({ viewport: { width: 900, height: 700 } });
|
||||
await d.goto('http://localhost:8081/', { waitUntil: 'networkidle' });
|
||||
const visD = await d.$eval('.fea-search-bar', el => getComputedStyle(el).display).catch(()=>'noel');
|
||||
console.log('barra display @900px:', visD);
|
||||
// Móvil: barra SÍ
|
||||
let m = await b.newPage({ viewport: { width: 390, height: 700 } });
|
||||
await m.goto('http://localhost:8081/', { waitUntil: 'networkidle' });
|
||||
const visM = await m.$eval('.fea-search-bar', el => getComputedStyle(el).display).catch(()=>'noel');
|
||||
console.log('barra display @390px:', visM);
|
||||
await b.close();
|
||||
})();
|
||||
Reference in New Issue
Block a user