Как сделать чтобы содержимое файла pdf публиковалось на страницу в wordpress?

Ссылка скопирована
1 ответ

В общем нужно заполнение меню ресторана на wordpress. JSON файлы не устраивают, но я не нашёл решения делать это из pdf. Есть ли такая возможность?

Дополнительно:

Ответы:

Можно плагином PDF Embedder

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Web-разработка Ответ

Опубликовать содержимое PDF на странице WordPress можно двумя способами, и их не стоит смешивать. Если нужно просто показать файл пользователю — встраивайте PDF через блок «Файл», embed или iframe. Если нужно, чтобы текст PDF стал HTML-контентом страницы и индексировался как обычный текст, PDF нужно распарсить и сохранить результат в post content.

Для простого отображения:

<iframe src="/wp-content/uploads/file.pdf" width="100%" height="800" loading="lazy"></iframe>

<iframe src="/wp-content/uploads/file.pdf" width="100%" height="800" loading="lazy"></iframe>

Для извлечения текста на сервере можно использовать Composer-библиотеку smalot/pdfparser в кастомном плагине:

composer require smalot/pdfparser

composer require smalot/pdfparser

use SmalotPdfParserParser;
 
$parser = new Parser();
$pdf = $parser->parseFile(WP_CONTENT_DIR . '/uploads/file.pdf');
$text = $pdf->getText();
 
wp_insert_post([
    'post_title'   => 'Текст из PDF',
    'post_content' => wpautop(esc_html($text)),
    'post_status'  => 'draft',
    'post_type'    => 'page',
]);

use SmalotPdfParserParser; $parser = new Parser(); $pdf = $parser->parseFile(WP_CONTENT_DIR . '/uploads/file.pdf'); $text = $pdf->getText(); wp_insert_post([ 'post_title' => 'Текст из PDF', 'post_content' => wpautop(esc_html($text)), 'post_status' => 'draft', 'post_type' => 'page', ]);

На практике у PDF есть нюансы: таблицы и колонки могут извлекаться криво, сканы без OCR дадут пустой текст, переносы строк будут неаккуратными. Для сканов сначала нужен OCR: Tesseract, Adobe OCR или внешний сервис.

Если задача разовая, быстрее извлечь текст вручную или через редактор PDF, почистить структуру и вставить в Gutenberg. Если задача регулярная, делайте отдельный импортёр: загрузка PDF, извлечение текста, черновик страницы, ручная проверка редактором. Автоматически публиковать без модерации не советую: качество текста из PDF часто требует чистки.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно