{"id":278440,"date":"2026-02-10T10:10:37","date_gmt":"2026-02-10T10:10:37","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/webequipe-pdf-search\/"},"modified":"2026-03-01T16:43:25","modified_gmt":"2026-03-01T16:43:25","slug":"webequipe-pdf-search","status":"publish","type":"plugin","link":"https:\/\/lmo.wordpress.org\/plugins\/webequipe-pdf-search\/","author":23354821,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.1","stable_tag":"1.0.1","tested":"6.9.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"WebEquipe PDF Search","header_author":"WebEquipe","header_description":"Indexes PDF files and integrates their content into WordPress search results","assets_banners_color":"e1ddfa","last_updated":"2026-03-01 16:43:25","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/webequipe.com\/pdf-search\/","header_author_uri":"https:\/\/webequipe.com","rating":5,"author_block_rating":0,"active_installs":70,"downloads":406,"num_ratings":1,"support_threads":2,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"webequipe","date":"2026-02-10 10:11:55"},"1.0.1":{"tag":"1.0.1","author":"webequipe","date":"2026-03-01 16:43:25"}},"upgrade_notice":{"1.0.1":"<p>Theme compatibility, duplicate preview\/meta fixes, Show Author option, Avada support.<\/p>","1.0.0":"<p>First release. After activation, go to Settings \u2192 PDF Search and click &quot;Re-index All PDFs&quot; to index existing PDFs. Use Exclude on any PDF you want to keep out of search.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3457847,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3457847,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3457847,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3457847,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3457847,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3457847,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3457847,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3457847,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3457847,"resolution":"5","location":"assets","locale":""},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3457847,"resolution":"6","location":"assets","locale":""},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3457847,"resolution":"7","location":"assets","locale":""}},"screenshots":{"1":"Settings page \u2013 indexing stats, options, shortcode, and PDF list","2":"Manage PDFs \u2013 list, search, filters, pagination","3":"Media Library \u2013 \"Search Indexed\" column (indexed, not indexed, excluded)","4":"Single PDF \u2013 Index, Unindex, Exclude actions","5":"Bulk actions \u2013 Index, Unindex, Include, Exclude","6":"Search results \u2013 PDFs with icon, size, page count, excerpts","7":"Shortcode search form on a page","8":"Attachment page \u2013 index status and re-index option"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[255555,33217,49860,1764,944],"plugin_category":[50],"plugin_contributors":[254576,254575],"plugin_business_model":[],"class_list":["post-278440","plugin","type-plugin","status-publish","hentry","plugin_tags-document-search","plugin_tags-full-text-search","plugin_tags-media-search","plugin_tags-pdf","plugin_tags-search","plugin_category-media","plugin_contributors-codersbucket","plugin_contributors-webequipe","plugin_committers-webequipe"],"banners":{"banner":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/banner-772x250.png?rev=3457847","banner_2x":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/banner-1544x500.png?rev=3457847","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/icon-128x128.png?rev=3457847","icon_2x":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/icon-256x256.png?rev=3457847","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-1.png?rev=3457847","caption":"Settings page \u2013 indexing stats, options, shortcode, and PDF list"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-2.png?rev=3457847","caption":"Manage PDFs \u2013 list, search, filters, pagination"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-3.png?rev=3457847","caption":"Media Library \u2013 \"Search Indexed\" column (indexed, not indexed, excluded)"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-4.png?rev=3457847","caption":"Single PDF \u2013 Index, Unindex, Exclude actions"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-5.png?rev=3457847","caption":"Bulk actions \u2013 Index, Unindex, Include, Exclude"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-6.png?rev=3457847","caption":"Search results \u2013 PDFs with icon, size, page count, excerpts"},{"src":"https:\/\/ps.w.org\/webequipe-pdf-search\/assets\/screenshot-7.png?rev=3457847","caption":"Shortcode search form on a page"}],"raw_content":"<!--section=description-->\n<p><strong>WebEquipe PDF Search<\/strong> indexes your PDF files and makes their text searchable. When visitors search your site, they see results from both your posts\/pages and the content inside your PDFs.<\/p>\n\n<h4>Video<\/h4>\n\n<p>Watch the setup and usage guide: <a href=\"https:\/\/www.youtube.com\/watch?v=YKdGUjkK4bA\">https:\/\/www.youtube.com\/watch?v=YKdGUjkK4bA<\/a><\/p>\n\n<h4>Supported PDFs<\/h4>\n\n<ul>\n<li><strong>Works with:<\/strong> Standard, text-based PDFs (the kind you create or export from Word, Google Docs, etc.). File size default 50MB, configurable up to 500MB in settings.<\/li>\n<li><strong>Does not work with:<\/strong> Scanned PDFs or image-only PDFs (no extractable text)\u2014use OCR elsewhere first. Password-protected PDFs cannot be indexed.<\/li>\n<\/ul>\n\n<h4>Keep Private PDFs Out of Search<\/h4>\n\n<p>Need to hide or protect certain PDFs? Use <strong>Exclude<\/strong> so a PDF is never indexed and never appears in search\u2014even when you run \"Re-index All PDFs\" or bulk index. Excluded PDFs stay in your Media Library; they just won\u2019t be searchable. Use <strong>Include<\/strong> later to allow indexing again. You can exclude or include PDFs from the Media Library or from <strong>Settings \u2192 PDF Search<\/strong> (Manage PDFs).<\/p>\n\n<h4>How to Use<\/h4>\n\n<ol>\n<li><strong>Install and activate<\/strong> the plugin.<\/li>\n<li>Go to <strong>Settings \u2192 PDF Search<\/strong>.<\/li>\n<li>Click <strong>Re-index All PDFs<\/strong> to index existing PDFs (new uploads are indexed automatically by default).<\/li>\n<li>Use your site\u2019s search or add the shortcode <code>[webequipe_pdf_search_form]<\/code> on a page\u2014PDFs will appear in results.<\/li>\n<\/ol>\n\n<p>Existing PDFs need to be indexed once; after that, new uploads can be indexed automatically (optional in settings). To hide specific PDFs from search, use <strong>Exclude<\/strong> on them (Media Library or Settings \u2192 PDF Search \u2192 Manage PDFs).<\/p>\n\n<h4>Settings at a Glance<\/h4>\n\n<p>All options are under <strong>Settings \u2192 PDF Search<\/strong>:<\/p>\n\n<ul>\n<li><strong>General<\/strong> \u2013 Turn indexing on\/off, include PDFs in WordPress search, maximum file size (50MB default), excerpt length.<\/li>\n<li><strong>Indexing options<\/strong> \u2013 Batch size for re-indexing.<\/li>\n<li><strong>Search display options<\/strong> \u2013 Show or hide PDF icon, file size, page count, last updated date, and thumbnail preview in search results.<\/li>\n<li><strong>Advanced<\/strong> \u2013 Debug logging, memory\/timeout for large PDFs, background processing, delete data on uninstall.<\/li>\n<\/ul>\n\n<p>Full details and shortcode options: <strong>Settings \u2192 PDF Search Help<\/strong>.<\/p>\n\n<h4>What You Can Do<\/h4>\n\n<ul>\n<li><strong>Full-text search<\/strong> \u2013 Search inside PDF content, not just filenames.<\/li>\n<li><strong>Control each PDF<\/strong> \u2013 Index, unindex, or <strong>exclude<\/strong> from the Media Library or the PDF list on the settings page.<\/li>\n<li><strong>Bulk actions<\/strong> \u2013 Index, unindex, include, or exclude multiple PDFs at once.<\/li>\n<li><strong>Search display<\/strong> \u2013 Show PDF icon, file size, page count, and excerpts (configurable in settings).<\/li>\n<li><strong>Shortcode<\/strong> \u2013 Add a PDF search form with <code>[webequipe_pdf_search_form]<\/code> (see <strong>Settings \u2192 PDF Search Help<\/strong> for options).<\/li>\n<li><strong>Background processing<\/strong> \u2013 Large PDFs are processed in the background to avoid timeouts.<\/li>\n<\/ul>\n\n<h3>Troubleshooting<\/h3>\n\n<h4>PDFs not appearing in search<\/h4>\n\n<p>Ensure PDFs are indexed (Media Library \u2192 \"Search Indexed\" column), \"Enable Search Integration\" is on in Settings \u2192 PDF Search, and the PDF is not excluded. See the FAQ for more.<\/p>\n\n<h4>Indexing fails or times out<\/h4>\n\n<p>Use Settings \u2192 PDF Search \u2192 Advanced: enable \"Background Processing\" for large PDFs. Ensure your server PHP memory_limit and max_execution_time are sufficient for very large files (see Help for details). Reduce \"Batch Size\" if re-indexing many PDFs at once.<\/p>\n\n<h4>Other issues<\/h4>\n\n<p>See the FAQ above and <strong>Settings \u2192 PDF Search Help<\/strong> for full documentation.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>The plugin stores extracted PDF text and metadata in a custom database table and a compressed backup in WordPress post meta for PDF attachments. If debug logging is enabled, it stores recent log entries in a WordPress option. It does not collect or send visitor data. If your PDFs contain personal or sensitive information, that content is in the index; mention this in your privacy policy if required.<\/p>\n\n<h3>Third-Party Libraries<\/h3>\n\n<ul>\n<li>smalot\/pdfparser (LGPL-3.0) \u2013 PDF text extraction<\/li>\n<li>symfony\/polyfill-mbstring (MIT) \u2013 multibyte string support<\/li>\n<\/ul>\n\n<h3>Credits<\/h3>\n\n<p>Developed by <a href=\"https:\/\/webequipe.com\">WebEquipe<\/a>. Uses <a href=\"https:\/\/github.com\/smalot\/pdfparser\">smalot\/pdfparser<\/a> for PDF text extraction.<\/p>\n\n<h3>Support<\/h3>\n\n<ul>\n<li>Support: https:\/\/wordpress.org\/support\/plugin\/webequipe-pdf-search<\/li>\n<\/ul>\n\n<!--section=installation-->\n<h4>From WordPress Admin<\/h4>\n\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Search for \"WebEquipe PDF Search\", install, and activate.<\/li>\n<\/ol>\n\n<h4>Manual Install<\/h4>\n\n<ol>\n<li>Download the plugin zip.<\/li>\n<li>Go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>, upload the zip, then install and activate.<\/li>\n<\/ol>\n\n<h4>After Activation<\/h4>\n\n<ol>\n<li>Go to <strong>Settings \u2192 PDF Search<\/strong>.<\/li>\n<li>Click <strong>Re-index All PDFs<\/strong> to index existing PDFs.<\/li>\n<li>New uploads are indexed automatically by default. Use <strong>Settings \u2192 PDF Search Help<\/strong> for full documentation.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20kind%20of%20pdfs%20are%20supported%3F\"><h3>What kind of PDFs are supported?<\/h3><\/dt>\n<dd><p>Standard, text-based PDFs (e.g. exported from Word or Google Docs). Default max size 50MB (up to 500MB in settings). Scanned or image-only PDFs have no extractable text\u2014use OCR first. Password-protected PDFs cannot be indexed.<\/p><\/dd>\n<dt id=\"why%20don%27t%20my%20pdfs%20appear%20in%20search%3F\"><h3>Why don't my PDFs appear in search?<\/h3><\/dt>\n<dd><ol>\n<li>Ensure they are <strong>indexed<\/strong>: in <strong>Media \u2192 Library<\/strong>, check the \"Search Indexed\" column (green check = indexed).<\/li>\n<li>If not indexed, use the \"Index\" action on the PDF or bulk \"Index PDFs\".<\/li>\n<li>Ensure <strong>Enable Search Integration<\/strong> is on in <strong>Settings \u2192 PDF Search<\/strong> for normal site search. The shortcode works even when this is off.<\/li>\n<\/ol><\/dd>\n<dt id=\"how%20do%20i%20hide%20or%20protect%20private%20pdfs%20from%20search%3F\"><h3>How do I hide or protect private PDFs from search?<\/h3><\/dt>\n<dd><p>Use <strong>Exclude<\/strong> on the PDF (Media Library or <strong>Settings \u2192 PDF Search<\/strong>). Excluded PDFs are never indexed and never appear in search, even after \"Re-index All PDFs\". Use <strong>Include<\/strong> to allow indexing again, then <strong>Index<\/strong> to index them.<\/p><\/dd>\n<dt id=\"what%27s%20the%20difference%20between%20unindex%2C%20exclude%2C%20and%20include%3F\"><h3>What's the difference between Unindex, Exclude, and Include?<\/h3><\/dt>\n<dd><ul>\n<li><strong>Unindex<\/strong> \u2013 Removes the PDF from search for now. You can index it again anytime (e.g. \"Index\" or \"Re-index All PDFs\").<\/li>\n<li><strong>Exclude<\/strong> \u2013 Keeps the PDF out of indexing permanently until you clear it. \"Re-index All PDFs\" and bulk \"Index PDFs\" skip excluded PDFs. Use for private or sensitive files.<\/li>\n<li><strong>Include<\/strong> \u2013 Clears the exclude flag so the PDF can be indexed again. You still need to run \"Index\" or \"Index PDFs\" after including.<\/li>\n<\/ul><\/dd>\n<dt id=\"how%20do%20i%20index%20or%20re-index%20many%20pdfs%20at%20once%3F\"><h3>How do I index or re-index many PDFs at once?<\/h3><\/dt>\n<dd><p><strong>Media Library:<\/strong> Select the PDFs \u2192 Bulk Actions \u2192 \"Index PDFs\" (or \"Unindex\"\/\"Exclude\"\/\"Include\") \u2192 Apply.<\/p>\n\n<p><strong>Settings page:<\/strong> Go to <strong>Settings \u2192 PDF Search<\/strong> \u2192 Manage PDFs \u2192 Scan PDFs \u2192 select PDFs \u2192 choose bulk action \u2192 Apply.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20scanned%20pdfs%3F\"><h3>Does it work with scanned PDFs?<\/h3><\/dt>\n<dd><p>No. The plugin extracts text from PDFs. Scanned PDFs are images; you need OCR elsewhere first, then use the resulting text-based PDF.<\/p><\/dd>\n<dt id=\"what%27s%20the%20maximum%20pdf%20size%3F\"><h3>What's the maximum PDF size?<\/h3><\/dt>\n<dd><p>Default is 50MB. You can raise it (up to 500MB) in <strong>Settings \u2192 PDF Search \u2192 Maximum File Size<\/strong>.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>No. Indexing runs in the background and search uses the index. Large PDFs are processed asynchronously.<\/p><\/dd>\n<dt id=\"password-protected%20pdfs%3F\"><h3>Password-protected PDFs?<\/h3><\/dt>\n<dd><p>They cannot be indexed because the plugin cannot read their content without the password.<\/p><\/dd>\n<dt id=\"multisite%3F\"><h3>Multisite?<\/h3><\/dt>\n<dd><p>Yes. Each site has its own index.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Block theme and theme compatibility: PDF meta shows in block themes (e.g. Twenty Twenty-Four\/Five) and themes without excerpt block; no duplicate preview or double meta (Astra\/Elementor).<\/li>\n<li>Theme-agnostic CSS: only <code>webequipe-pdf-*<\/code> classes; improved preview\/meta sizing and alignment.<\/li>\n<li>\"Show Author\" setting to show uploader name in result meta; Avada compatibility for PDF excerpts.<\/li>\n<li>Help page and PHPCS\/compliance updates.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Automatic PDF indexing on upload (optional)<\/li>\n<li>Full-text search in WordPress search and via shortcode<\/li>\n<li>Settings page: indexing, display options, shortcode, PDF list<\/li>\n<li>Media Library: index status and per-PDF actions (Index, Unindex, Exclude)<\/li>\n<li>Bulk actions: Index, Unindex, Include, Exclude<\/li>\n<li>Exclusion system to keep private or sensitive PDFs out of search<\/li>\n<li>Background processing for large PDFs<\/li>\n<li>Template tags and Help documentation<\/li>\n<li>WordPress Multisite support<\/li>\n<\/ul>","raw_excerpt":"Search inside your PDF documents. Index text-based PDFs and show their content in WordPress search.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/278440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=278440"}],"author":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/webequipe"}],"wp:attachment":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=278440"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=278440"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=278440"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=278440"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=278440"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=278440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}