2011-01-23 11 views
4

すべての画像をテーブルから取り出すことができるmysqlクエリはありますか?解決策を見つける運がなかった。ありがとうWordPressのすべての画像を検索するテーブル

e。 wordpressのサイト

からの画像は、私のwp_postsテーブルでは、他のデータと混在している画像の全て

wp_postsテーブル内のすべてのです。私は、特定のテーブルWordpress Database ERDに基づいて

SELECT * FROM wp_posts 

から

+1

には、テーブル構造や、正確に何を得ようとしているかについての情報がもう少し必要です。 –

+3

ええ、 'SELECT * FROM images' – BoltClock

+0

あなたは私にテーブルを見せて、あなたにその質問を表示します。 –

答えて

16

すべてのレコードテーブル

SELECT * FROM tbl 

から私のハードドライブに保存するために、この表のうち、すべての画像を取得したいと思います添付ファイルを取得するには、これは閉じる必要があります。

SELECT * FROM wp_posts 
WHERE post_type='attachment' and post_status='inherit' 

これはあなたにatt achmentsだけでなく、私は間違っていないよ場合は、コンテキスト

SELECT 
    posts.ID, 
    posts.post_title AS title, 
    posts.post_content AS content, 
    files.meta_value AS filepath 
FROM 
    wp_posts posts 
    INNER JOIN wp_posts attachments ON posts.ID = attachments.post_parent 
    INNER JOIN wp_postmeta files ON attachments.ID = files.post_id 
WHERE files.meta_key = '_wp_attached_file' 

のいくつかの並べ替えが必要な場合には、に関連する親柱は、filepathはあなたの画像ファイルが実際に格納されているディスクの場所へのリンクを提供します。それだけであれば、それを参照してください(またはリモートの場合はftp)。そこからすべてのファイルを取得してください。

+0

ワードプレスにはERDがありますか?私はそれを知らなかった! +1 – BoltClock

+0

ありがとう、それはとても役に立ちました! – Davey

+0

この執筆時点では、Wordpress 4。6-alpha-37598を指定すると、ファイルのURLは '' guid''フィールドに保存されます。投稿ベースの添付ファイル/メディアではわかりません。 –

0

私はWordPressに慣れていませんが、以前は同様のことをしなければならず、正規表現で解決しました。

私はこれを直接クエリで行う方法を知らない。 img-tags部分だけを取得するために、正規表現でhtmlコードをフィルタリングしました。私はすべての投稿を照会し、それらをフィルタリングしなければならなかった。

投稿から<のimg/>タグを抽出するとしますか?

それ以外の場合は、middaparkaが既にコメントしているので、さらに情報を提供する必要があります。

関連する問題