稍微折腾下,就解决了这个有点难度的问题…… 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