説明
Rapls PDF Image Creator は、WordPress のメディアライブラリに PDF ファイルをアップロードすると自動的にサムネイル画像を生成します。ImageMagick (Imagick PHP エクステンション) を使用して、PDF の最初のページを画像に変換します。
主な機能
- 自動生成 – PDF アップロード時にサムネイルを即座に作成する
- アイキャッチ画像対応 – 生成したサムネイルを自動的に PDF のアイキャッチ画像に設定する
- 複数サイズ対応 – WordPress に登録されたすべての画像サイズで生成する
- メディアライブラリ統合 – デフォルトの PDF アイコンの代わりにサムネイルを表示する
- エディター統合 – サムネイル画像付きの PDF リンクを投稿に挿入する
- 一括生成 – 既存のすべての PDF のサムネイルを一度に生成する
- 柔軟な出力 – JPEG、PNG、WebP フォーマットから選択可能
仕組み
- メディアライブラリに PDF ファイルをアップロードする
- プラグインが最初のページを自動的に画像に変換する
- 画像を PDF のアイキャッチ画像として登録する
- ショートコードまたはテンプレート関数でサムネイルを表示する
生成されるファイル
my-document.pdf をアップロードすると、プラグインは以下を作成します:
- my-document-pdf.jpg (フルサイズカバー画像)
- my-document-pdf-1024×768.jpg (大)
- my-document-pdf-300×225.jpg (中)
- my-document-pdf-150×150.jpg (サムネイル)
- テーマ設定に基づく追加サイズ
ショートコード
[rapls_pdf_thumbnail id="123"]– サムネイル画像を表示する[rapls_pdf_thumbnail_url id="123"]– サムネイル URL を出力する[rapls_pdf_clickable_thumbnail id="123"]– PDF へのリンク付きサムネイル[rapls_pdf_download_link id="123"]– サムネイル付きダウンロードリンク
テンプレート関数
rapls_pic_get_thumbnail_url( $pdf_id, $size )– サムネイル URL を取得するrapls_pic_get_thumbnail_id( $pdf_id )– サムネイルの添付ファイル ID を取得するrapls_pic_get_thumbnail_image( $pdf_id, $size, $attr )– サムネイル HTML を取得するrapls_pic_has_thumbnail( $pdf_id )– PDF にサムネイルがあるか確認するrapls_pic_generate_thumbnail( $pdf_id, $force )– サムネイルを生成する
要件
- WordPress 5.0以上
- PHP 7.4以上
- Imagick PHP エクステンションと PDF サポートを含む ImageMagick
ほとんどの共有ホスティングで ImageMagick を利用できます。プラグイン設定の「ステータス」タブでサーバーが要件を満たしているか確認してください。
テンプレート関数の使用
テーマで PDF サムネイルを表示する:
$pdf_id = 123;
if ( rapls_pic_has_thumbnail( $pdf_id ) ) {
echo rapls_pic_get_thumbnail_image( $pdf_id, 'medium' );
}
サムネイルを PDF ファイルにリンクする:
$pdf_id = 123;
if ( $thumbnail_id = get_post_thumbnail_id( $pdf_id ) ) {
echo '<a href="' . esc_url( wp_get_attachment_url( $pdf_id ) ) . '" target="_blank">';
echo wp_get_attachment_image( $thumbnail_id, 'medium' );
echo '</a>';
}
投稿に添付されたすべての PDF の表示
$pdfs = get_posts( array(
'post_type' => 'attachment',
'post_mime_type' => 'application/pdf',
'post_parent' => get_the_ID(),
'posts_per_page' => -1,
) );
foreach ( $pdfs as $pdf ) {
if ( rapls_pic_has_thumbnail( $pdf->ID ) ) {
printf(
'<a href="%s">%s</a>',
esc_url( wp_get_attachment_url( $pdf->ID ) ),
rapls_pic_get_thumbnail_image( $pdf->ID, 'thumbnail' )
);
}
}
利用可能なフィルターフック
rapls_pdf_image_creator_thumbnail_page– 使用する PDF ページ (デフォルト: 0)rapls_pdf_image_creator_thumbnail_max_width– 最大幅rapls_pdf_image_creator_thumbnail_max_height– 最大の高さrapls_pdf_image_creator_thumbnail_quality– 画像品質 (1-100)rapls_pdf_image_creator_thumbnail_format– 出力フォーマットrapls_pdf_image_creator_thumbnail_bgcolor– 背景色rapls_pdf_image_creator_thumbnail_image_attributes– 画像タグの属性rapls_pdf_image_creator_custom_insert_html– カスタム挿入 HTMLrapls_pdf_image_creator_hide_thumbnails_in_library– メディアライブラリで非表示にする
利用可能なアクションフック
rapls_pdf_image_creator_before_generate– サムネイル生成前rapls_pdf_image_creator_after_generate– 生成成功後rapls_pdf_image_creator_generation_failed– 生成失敗時
スクリーンショット
インストール
rapls-pdf-image-creatorフォルダーを/wp-content/plugins/にアップロードする- WordPress の「プラグイン」メニューからプラグインを有効化する
- 「設定」>「Rapls PDF Image Creator」に移動する
- 「ステータス」タブで ImageMagick が利用可能か確認する
- PDF をアップロードしてサムネイル生成をテストする
FAQ
-
サーバーの要件は ?
-
Imagick PHP エクステンションと PDF サポートを含む ImageMagick が必要です。ほとんどの共有ホスティングで利用可能です。有効にする必要がある場合は、ホスティングプロバイダーに問い合わせてください。
-
サーバーが PDF 変換に対応しているか確認するには ?
-
「設定」>「Rapls PDF Image Creator」>「ステータス」タブに移動します。ImageMagick が利用可能で正しく設定されているかどうかを確認できます。
-
プラグインのインストール前にアップロードした PDF のサムネイルを生成できますか ?
-
はい。「設定」>「Rapls PDF Image Creator」>「一括生成」タブに移動して、既存のすべての PDF をスキャンしてサムネイルを生成できます。
-
対応している画像フォーマットは ?
-
JPEG、PNG、WebP に対応しています。「画像設定」タブで希望のフォーマットを設定してください。
-
プラグインをアンインストールするとサムネイルは削除されますか ?
-
デフォルトでは削除されます。生成した画像を通常の添付ファイルとして残すには、アンインストール前に「表示設定」の「アンインストール時に画像を保持」を有効にしてください。
-
サムネイルに別のページを使用できますか ?
-
はい。
rapls_pdf_image_creator_thumbnail_pageフィルターを使用してください:add_filter( 'rapls_pdf_image_creator_thumbnail_page', function( $page, $pdf_id ) { return 1; // Use second page (0-indexed) }, 10, 2 ); -
挿入時の出力をカスタマイズするには ?
-
「設定」>「Rapls PDF Image Creator」>「挿入設定」に移動します。「画像のみ」、「タイトルリンク」、または
{thumbnail}、{pdf_url}、{pdf_title}などのプレースホルダーを使った「カスタム HTML」から選択できます。
評価
貢献者と開発者
変更履歴
1.0.9.1
- Plugin URI を新しいガイドページに更新
1.0.9
- 修正: PDF/X-1:2001フォーマットの PDF で黒い画像の代わりに正しいサムネイルを生成するよう修正
- 印刷用 PDF 向けに CMYK から sRGB への色空間変換を追加
1.0.8
- 修正: PDF の添付ファイル詳細でサムネイル URL の代わりに PDF URL を表示するよう修正
- 修正: 生成されたサムネイルの添付ファイル詳細にソース PDF URL を表示するよう修正
- 修正:「URL をクリップボードにコピー」が PDF とサムネイルの両方で PDF URL をコピーするよう修正
- 修正: AJAX メディアライブラリクエリで生成されたサムネイルを正しく非表示にするよう修正
- 非推奨の load_plugin_textdomain() 呼び出しを削除 (WordPress 4.6以降は自動読み込み)
- WordPress 翻訳スタイルガイドに準拠するよう日本語翻訳を更新
1.0.6
- 「ステータス」タブにサポートリンク (Buy Me a Coffee) を追加
- PHP 7.4互換性を修正 (readonly プロパティと match 式を削除)
- セキュリティ改善: WP_DEBUG が有効な場合のみ error_log() を実行するよう変更
- 有効化/無効化フックから flush_rewrite_rules() を削除
- AJAX URL 処理を admin_url() を使用して簡素化
- カスタム HTML 出力に wp_kses_post() サニタイズを追加
1.0.5
- GhostScript エンジンのサポートを削除 (WordPress.org セキュリティ要件)
- ImageMagick (Imagick PHP エクステンション) のみを使用するよう変更
- 「ステータス」タブにサーバー要件の確認機能を追加
- ImageMagick サポートが不足している場合の管理画面通知を改善
- エンジン選択を削除して設定を簡素化
1.0.4
- 一意性のため名前空間を Rapls\PDFImageCreator に変更
- WordPress.org 準拠のためすべてのプレフィックスを rapls_pic_ に更新
- ショートコード名を pdf_* から rapls_pdf_* に変更
- AJAX エラーレスポンスからファイルパスの露出を削除
- メタキーを rapls_pic プレフィックスに更新
1.0.3
- プラグイン名を “Rapls PDF Image Creator” に変更
- プラグインスラッグを “rapls-pdf-image-creator” に更新
- PHP 8.0以上の互換性のため非推奨の imagedestroy() を削除
1.0.2
- WordPress.org 準拠のため翻訳者コメントの配置を修正
1.0.1
- WordPress Plugin Check の互換性の問題を修正
- 適切な入力サニタイズによるセキュリティ改善
- 非標準ポートでの AJAX における CORS の問題を修正
- WordPress コーディング規約に準拠するよう更新
1.0.0
- 初回リリース
- PDF アップロード時にサムネイルを自動生成
- ImageMagick エンジン対応
- サムネイル一括生成
- アイキャッチ画像対応
- ブロックエディター統合
- ショートコードとテンプレート関数を追加
- 画像設定のカスタマイズに対応
- 日本語翻訳を同梱




