WordPress如何獲取文章裏面所有圖片或者前幾張圖片

稍微折騰下,就解決了這個有點難度的問題…… wp能夠獲取文章的第一張圖片做爲封面,或者特點圖片,也有人解決了,獲取文章裏面全部的圖片來製做帖內幻燈片…… php

最近在作站的時候,恰好碰到了這個問題,我既要獲取文章裏面的圖片,也不想獲取完全部的圖片…… url

這可怎麼辦? spa

先附上獲取文章裏面全部圖片的代碼(寫在functions.php裏面) blog

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function all_img ( $ soContent ) {
$ soImages = '~<img [^\>]*\ />~' ;
preg_match_all ( $ soImages , $ soContent , $ thePics ) ;
$ allPics = count ( $ thePics ) ;
if ( $ allPics > 0 ) {
foreach ( $ thePics [ 0 ] as $ v ) {
echo $ v ;
}
}
else {
echo "<img src='" ;
echo bloginfo ( 'template_url' ) ;
echo "/images/thumb.gif'>" ;
}
}

注意上面的判斷循環…… 先判斷文章裏面是否有圖片,有的話就循環輸出全部圖片,沒有的話,指定一個默認的圖片來代替; 圖片

個人解決思路是,若是我要獲取前3張圖片,我能夠先加入一個自定義變量,賦予1的值,每次循環判斷+1;到第4次循環即可中止不在輸出,然後跳出循環…… get

個人解決代碼(也不知道是否是複製完整了,有沒有多了一個」(」或者」)」;) it

須要童鞋自行檢查檢查了…… io

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function all_img ( $ soContent ) {
$ soImages = '~<img [^\>]*\ />~' ;
preg_match_all ( $ soImages , $ soContent , $ thePics ) ;
$ allPics = count ( $ thePics ) ;
if ( $ allPics > 0 ) {
$ count = 1 ; //賦予1的值
foreach ( $ thePics [ 0 ] as $ v ) {
if ( $ count == 4 ) { break ; } //當count等於4的時候跳出循環
else { echo $ v ; }
$ count ++ ; //循環+1
}
}
else {
echo "<img src='" ;
echo bloginfo ( 'template_url' ) ;
echo "/images/thumb.gif'>" ;
}
}

自此完畢,沒學過php,循環這些什麼的,都還得翻度娘……  糾結…… table

原文轉載:http://www.newsky365.com/wpimgall/ function

相關文章
相關標籤/搜索