{"id":28746818,"url":"https://github.com/blogpocket/pdf-generator-plugin","last_synced_at":"2026-04-24T22:36:11.360Z","repository":{"id":299104306,"uuid":"1002077154","full_name":"blogpocket/pdf-generator-plugin","owner":"blogpocket","description":"Plugin de WordPress: Generador de PDFs por Etiqueta genera un PDF con todos los posts (o CPT) de una etiqueta seleccionada. ","archived":false,"fork":false,"pushed_at":"2025-11-11T20:15:01.000Z","size":47,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-11T22:16:36.513Z","etag":null,"topics":["pdf","pdf-generation","php","plugin","wordpress","wordpress-plugin"],"latest_commit_sha":null,"homepage":"https://www.blogpocket.com","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blogpocket.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-14T17:02:18.000Z","updated_at":"2025-11-11T20:15:05.000Z","dependencies_parsed_at":"2025-06-14T18:20:52.086Z","dependency_job_id":"ea816d31-668c-4c04-b90d-75a304f80eb0","html_url":"https://github.com/blogpocket/pdf-generator-plugin","commit_stats":null,"previous_names":["blogpocket/pdf-generator-plugin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/blogpocket/pdf-generator-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blogpocket%2Fpdf-generator-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blogpocket%2Fpdf-generator-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blogpocket%2Fpdf-generator-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blogpocket%2Fpdf-generator-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blogpocket","download_url":"https://codeload.github.com/blogpocket/pdf-generator-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blogpocket%2Fpdf-generator-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32243544,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pdf","pdf-generation","php","plugin","wordpress","wordpress-plugin"],"created_at":"2025-06-16T15:48:40.952Z","updated_at":"2026-04-24T22:36:11.354Z","avatar_url":"https://github.com/blogpocket.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Generador de PDF Personalizado para WordPress\n\nPlugin de WordPress que permite generar PDFs personalizados a partir de posts, páginas y taxonomías seleccionadas, con una interfaz de administración intuitiva.\n\n## 📋 Características\n\n- **Interfaz de administración simple e intuitiva**\n- **Selección flexible de contenido:**\n  - Tipos de contenido (Entradas, Páginas, Custom Post Types)\n  - Taxonomías (Categorías, Etiquetas, taxonomías personalizadas)\n  - Términos específicos dentro de cada taxonomía\n- **Generación automática de portada** con título e imagen destacada\n- **Formato profesional del contenido:**\n  - Preserva encabezados (H1-H6)\n  - Mantiene negritas, cursivas y enlaces\n  - Respeta listas ordenadas y desordenadas\n  - Incluye blockquotes con estilo\n  - Ajusta automáticamente tamaños de fuente pequeños para legibilidad\n- **Procesamiento inteligente de imágenes:**\n  - Ajuste automático al ancho de página\n  - Mantiene proporciones originales\n  - Soporte para imágenes locales y externas\n  - Alta resolución (300 DPI)\n- **Cada post en una página nueva** con título y fecha de publicación\n- **Guardado automático** en la Librería de Medios de WordPress\n\n## 🚀 Instalación\n\n### Requisitos previos\n\n- WordPress 5.0 o superior\n- PHP 7.2 o superior\n- Librería TCPDF\n\n### Pasos de instalación\n\n1. **Descargar el plugin:**\n\n   Descarga el zip y súbelo a tu instalación de WordPress.\n   \n3. **Instalar TCPDF:**\n   \n   Descarga TCPDF desde [su repositorio oficial](https://github.com/tecnickcom/TCPDF) y colócala en la carpeta del plugin:\n   \n   ```bash\n   cd wp-content/plugins/pdf-generator\n   mkdir -p lib\n   cd lib\n   git clone https://github.com/tecnickcom/TCPDF.git tcpdf\n   ```\n   \n   O descarga el ZIP y descomprímelo en `lib/tcpdf/`\n\n4. **Estructura de carpetas:**\n   ```\n   wp-content/plugins/pdf-generator/\n   ├── pdf-generator.php\n   ├── lib/\n   │   └── tcpdf/\n   │       ├── tcpdf.php\n   │       ├── config/\n   │       ├── fonts/\n   │       └── ...\n   ├── assets/\n   │   ├── css/\n   │   │   └── admin.css (generado automáticamente)\n   │   └── js/\n   │       └── admin.js (generado automáticamente)\n   └── README.md\n   ```\n\n5. **Activar el plugin:**\n   - Ve a WordPress Admin → Plugins\n   - Busca \"Generador de PDF Personalizado\"\n   - Haz clic en \"Activar\"\n\n## 📖 Uso\n\n### Interfaz de administración\n\n1. En el panel de WordPress, ve a **Generador PDF** en el menú lateral\n2. Selecciona el **Tipo de Contenido** (Entradas, Páginas, etc.)\n3. *Opcional:* Selecciona una **Taxonomía** (Categorías, Etiquetas, etc.)\n4. *Opcional:* Si seleccionaste una taxonomía, elige un **Término Específico**\n5. *Opcional:* Añade un **Título personalizado** para el PDF\n6. Haz clic en **Generar PDF**\n\n### Estructura del PDF generado\n\n- **Portada:** Título del documento + imagen destacada del primer post\n- **Contenido:** Cada post en una página nueva con:\n  - Título del post\n  - Fecha de publicación\n  - Contenido completo con formato\n  - Imágenes ajustadas y centradas\n\n### Ejemplos de uso\n\n**Generar PDF de todos los posts de una categoría:**\n```\nTipo de Contenido: Entradas\nTaxonomía: Categorías\nTérmino: Noticias\n```\n\n**Generar PDF de todas las páginas:**\n```\nTipo de Contenido: Páginas\nTaxonomía: (vacío)\nTérmino: (vacío)\n```\n\n**Generar PDF de posts con una etiqueta específica:**\n```\nTipo de Contenido: Entradas\nTaxonomía: Etiquetas\nTérmino: Tutorial\n```\n\n## 🎨 Características de formato\n\n### Texto\n- **Encabezados:** H1-H6 con tamaños jerárquicos\n- **Negritas y cursivas:** Totalmente preservadas\n- **Enlaces:** Clickeables con color azul\n- **Listas:** Con viñetas o números\n- **Citas (blockquotes):** Con borde y fondo gris claro\n- **Tamaño mínimo de fuente:** 9pt para legibilidad\n\n### Imágenes\n- Ancho máximo: 170mm (ajustado a página A4)\n- Resolución: 300 DPI\n- Centradas automáticamente\n- Proporción original mantenida\n- Salto de página automático si no cabe\n\n## 🔧 Personalización\n\n### Modificar tamaños de fuente\n\nEdita la función `improve_html_for_pdf()` en `pdf-generator.php`:\n\n```php\n$content = preg_replace('/\u003ch1([^\u003e]*)\u003e/i', '\u003ch1 style=\"font-size: 24pt; ...\"$1\u003e', $content);\n```\n\n### Cambiar márgenes\n\nModifica en la función `generate_pdf_file()`:\n\n```php\n$pdf-\u003eSetMargins(20, 20, 20); // izquierda, arriba, derecha\n```\n\n### Ajustar ancho de imágenes\n\nEn la función donde se procesan las imágenes:\n\n```php\n$max_width = 170; // mm - Cambia este valor\n```\n\n## 🐛 Resolución de problemas\n\n### El selector de términos no aparece\n1. Desactiva y reactiva el plugin\n2. Limpia la caché del navegador\n3. Verifica la consola del navegador (F12) para errores JavaScript\n\n### Error \"TCPDF no encontrado\"\n- Verifica que la carpeta `lib/tcpdf/` existe\n- Asegúrate de que el archivo `tcpdf.php` está en esa ubicación\n- Verifica permisos de lectura en la carpeta\n\n### Las imágenes no aparecen\n- Verifica que las imágenes están en la librería de medios\n- Comprueba permisos de lectura en `wp-content/uploads/`\n- Revisa el registro de errores de PHP\n\n### Timeout al generar PDF\nSi tienes muchos posts:\n- Aumenta el `max_execution_time` en PHP\n- Filtra por taxonomía/término para reducir posts\n- Contacta con tu hosting para aumentar límites\n\n## 📝 Changelog\n\n### Version 1.0.0\n- Lanzamiento inicial\n- Interfaz de administración\n- Generación de PDFs con formato completo\n- Soporte para imágenes\n- Guardado en librería de medios\n\n## 🤝 Contribuir\n\nLas contribuciones son bienvenidas. Por favor:\n\n1. Fork el proyecto\n2. Crea una rama para tu feature (`git checkout -b feature/AmazingFeature`)\n3. Commit tus cambios (`git commit -m 'Add some AmazingFeature'`)\n4. Push a la rama (`git push origin feature/AmazingFeature`)\n5. Abre un Pull Request\n\n## 📄 Licencia\n\nEste proyecto está bajo la Licencia GPL v2 o posterior - ver el archivo [LICENSE](LICENSE) para más detalles.\n\n## 👤 Autor\n\nAntonio Cambronero (Blogpocket.com) - [@blogpocket](https://github.com/blogpocket)\n\n## 🙏 Agradecimientos\n\n- [TCPDF](https://github.com/tecnickcom/TCPDF) - Librería para generación de PDFs\n- Comunidad de WordPress por su excelente documentación\n\n## 📞 Soporte\n\n¿Problemas o preguntas? Abre un [issue](https://github.com/blogpocket/wp-pdf-generator/issues) en GitHub.\n\n---\n\n**Nota:** Este plugin requiere la librería TCPDF que debe instalarse por separado debido a su tamaño.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblogpocket%2Fpdf-generator-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblogpocket%2Fpdf-generator-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblogpocket%2Fpdf-generator-plugin/lists"}