博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WordPress如何获取文章里面全部图片或者前几张图片
阅读量:6573 次
发布时间:2019-06-24

本文共 1283 字,大约阅读时间需要 4 分钟。

hot3.png

稍微折腾下,就解决了这个有点难度的问题…… wp可以获取文章的第一张图片作为封面,或者特色图片,也有人解决了,获取文章里面所有的图片来制作帖内幻灯片……

最近在做站的时候,刚好碰到了这个问题,我既要获取文章里面的图片,也不想获取完所有的图片……

这可怎么办?

先附上获取文章里面所有图片的代码(写在functions.php里面)

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次循环便可停止不在输出,而后跳出循环……

我的解决代码(也不知道是不是复制完整了,有没有多了一个”(”或者”)”;)

需要童鞋自行检查检查了……

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,循环这些什么的,都还得翻度娘……  纠结……

原文转载:

转载于:https://my.oschina.net/u/1018850/blog/167045

你可能感兴趣的文章
u3d移动游戏优化规范
查看>>
POJ1703 Find them, Catch them
查看>>
Eclipse Java注释模板设置
查看>>
Docker网络的基本功能操作示例
查看>>
自适应备忘录 demo
查看>>
HTML转义字符大全(转)
查看>>
Optimizing Oracle RAC
查看>>
[Javascript] Add a browser build to an npm module
查看>>
线程安全的atomic wrapper classes例子
查看>>
[摘录]调动员工积极性的七个关键
查看>>
Linux getcwd()的实现【转】
查看>>
Backup Volume 操作 - 每天5分钟玩转 OpenStack(59)
查看>>
.htaccess 基础教程(四)Apache RewriteCond 规则参数
查看>>
转: maven进阶:一个多模块项目
查看>>
Android控件之HorizontalScrollView 去掉滚动条
查看>>
UVM中的class--2
查看>>
关于异常的合理处理方式
查看>>
javascript ES3小测试
查看>>
Android - Animation(二)
查看>>
Android6.0指纹识别开发
查看>>