Array bouwen na check en laten beginnen op verdere positie
Wat kan ik het beste doen? Ik zit eraan te denken eerst alle berichten op te halen, dan op die array de check uit te voeren en uit dat resultaat een nieuwe array maken die bruikbaar is zoals ik wil, ik weet alleen niet hoe ik dat netjes doe.
De reden dat ik dit doe is omdat ik twee elementen heb waar de berichten in worden geladen, het eerste element heeft de twee eerste array waarden (twee grote berichten) en daarnaast is een element met een lijst van verdere berichten. Het is dus de bedoeling dat die lijst start op positie 2 in de array (0,1 in het eerste element, 2,3,4 etc in het tweede element).
Mijn code (voor de twee grote facebook berichten:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?
function fetchUrl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
// You may need to add the line below
// curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$feedData = curl_exec($ch);
curl_close($ch);
return $feedData;
}
//App Info, needed for Auth
$app_id = "secret";
$app_secret = "secret";
//Retrieve auth token
$authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=23523523523&client_secret=secret");
$json_object = file_get_contents("https://graph.facebook.com/v2.6/2e6t234634634634634/posts?fields=full_picture%2Cmessage%2Cstory%2Cpermalink_url%2Cupdated_time%2Cfrom&access_token=accesstoken");
$feedarray = json_decode($json_object);
$f = 0;
foreach ( $feedarray->data as $key => $feed_data )
{
if($feed_data->full_picture != ''){
$fbimage = $feed_data->full_picture;
}else{
$fbimage = 'cms/images/placeholder/placeholder.jpg';
}
if($feed_data->message > 270){
$shortstrfb = substr($feed_data->message, 0, 270) . '...';
}else{
$shortstrfb = $feed_data->message;
}
if($feed_data->message != ''){
$f++;
}
if($f > 2){
break;
}
if($feed_data->message != '' && $feed_data->from->name == 'page owner'){
$facebookfeed .= '
<div class="col-lg-4 marg-lg-b30">
<div class=" widget">
<div class="card latest-news latest-news--block">
<a href="'.$feed_data->permalink_url.'" class="latest-news__image">
<img src="'.$fbimage.'" width="360" height="204" srcset="'.$fbimage.' 360w, '.$fbimage.' 830w" sizes="(min-width: 992px) 360px, calc(100vw - 30px)" class="card-img-top " alt="nieuws">
</a>
<div class="card-block latest-news__content js-col-height-news">
<time class="latest-news__date">'.date("d-m-Y",strtotime($feed_data->updated_time)).'</time>
<h4 class="card-title latest-news__title">
<a href="'.$feed_data->permalink_url.'" target="_blank"><i class="fa fa-facebook-official" aria-hidden="true"></i> Bekijk</a>
</h4>
<div class="card-text latest-news__text">
'.$shortstrfb.'
</div>
</div>
</div>
</div>
</div>';
}
}
echo $facebookfeed;
?>
function fetchUrl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
// You may need to add the line below
// curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$feedData = curl_exec($ch);
curl_close($ch);
return $feedData;
}
//App Info, needed for Auth
$app_id = "secret";
$app_secret = "secret";
//Retrieve auth token
$authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=23523523523&client_secret=secret");
$json_object = file_get_contents("https://graph.facebook.com/v2.6/2e6t234634634634634/posts?fields=full_picture%2Cmessage%2Cstory%2Cpermalink_url%2Cupdated_time%2Cfrom&access_token=accesstoken");
$feedarray = json_decode($json_object);
$f = 0;
foreach ( $feedarray->data as $key => $feed_data )
{
if($feed_data->full_picture != ''){
$fbimage = $feed_data->full_picture;
}else{
$fbimage = 'cms/images/placeholder/placeholder.jpg';
}
if($feed_data->message > 270){
$shortstrfb = substr($feed_data->message, 0, 270) . '...';
}else{
$shortstrfb = $feed_data->message;
}
if($feed_data->message != ''){
$f++;
}
if($f > 2){
break;
}
if($feed_data->message != '' && $feed_data->from->name == 'page owner'){
$facebookfeed .= '
<div class="col-lg-4 marg-lg-b30">
<div class=" widget">
<div class="card latest-news latest-news--block">
<a href="'.$feed_data->permalink_url.'" class="latest-news__image">
<img src="'.$fbimage.'" width="360" height="204" srcset="'.$fbimage.' 360w, '.$fbimage.' 830w" sizes="(min-width: 992px) 360px, calc(100vw - 30px)" class="card-img-top " alt="nieuws">
</a>
<div class="card-block latest-news__content js-col-height-news">
<time class="latest-news__date">'.date("d-m-Y",strtotime($feed_data->updated_time)).'</time>
<h4 class="card-title latest-news__title">
<a href="'.$feed_data->permalink_url.'" target="_blank"><i class="fa fa-facebook-official" aria-hidden="true"></i> Bekijk</a>
</h4>
<div class="card-text latest-news__text">
'.$shortstrfb.'
</div>
</div>
</div>
</div>
</div>';
}
}
echo $facebookfeed;
?>
En de loop voor de lijst:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?
$c = 0;
foreach ( $feedarray->data as $key => $feed_data1 ){
if($feed_data1->message != ''){
$c++;
}
//Na array waarde 6 stop de loop
if($c > 6){
break;
}
if($feed_data1->message != '' && $feed_data1->from->name == 'page owner'){
if ($key < 7) continue;
$facebookfeed1 .= '
<a href="'.$feed_data1->permalink_url.'" target="_blank" class="card latest-news latest-news--inline">
<div class="card-block latest-news__content">
<h4 class="card-title latest-news__title"><i class="fa fa-facebook-official" aria-hidden="true"></i> Bekijk op Facebook</h4>
<p class="facebooktext">'.$feed_data1->message.'</p>
<time class="latest-news__date" datetime="2016-04-22T10:06:21+00:00">'.date("d-M-Y",strtotime($feed_data1->updated_time)).'</time>
</div>
</a>
';
}
}
echo $facebookfeed1;
?>
$c = 0;
foreach ( $feedarray->data as $key => $feed_data1 ){
if($feed_data1->message != ''){
$c++;
}
//Na array waarde 6 stop de loop
if($c > 6){
break;
}
if($feed_data1->message != '' && $feed_data1->from->name == 'page owner'){
if ($key < 7) continue;
$facebookfeed1 .= '
<a href="'.$feed_data1->permalink_url.'" target="_blank" class="card latest-news latest-news--inline">
<div class="card-block latest-news__content">
<h4 class="card-title latest-news__title"><i class="fa fa-facebook-official" aria-hidden="true"></i> Bekijk op Facebook</h4>
<p class="facebooktext">'.$feed_data1->message.'</p>
<time class="latest-news__date" datetime="2016-04-22T10:06:21+00:00">'.date("d-M-Y",strtotime($feed_data1->updated_time)).'</time>
</div>
</a>
';
}
}
echo $facebookfeed1;
?>
Er zijn nog geen reacties op dit bericht.