Loop als Funktion speichern
-
Hallo, ich habe mir selber eine Loop zusammengebastelt und möchte diese als Shortcode in den Visual Composer integrieren. Dazu muss ich das ganze als eine Funktion abspeichern, einen Shortcode erstellen und diesen dann im Visual Composer verknüpfen.
Hab ich alles gemacht, nur leider funktioniert’s nicht.Das ist meine Loop:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <div class="col-md-4 text-default" > <div class="service_teaser vertical"> <div class="service_photo"> <figure style="background-image:url(<?php if ( has_post_thumbnail() ) {the_post_thumbnail_url();}?>)"></figure> </div> <div class="service_details"> <h2><a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2> <p><?php the_content(); ?></p> </div> </div> </div> <?php endwhile; else : ?> <h2>Leider keine News vorhanden</h2> <?php endif; ?>
Daraus habe ich diese Funktion in functions.php geschrieben:
function eigene_news() { if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <div class="col-md-4 text-default" > <div class="service_teaser vertical"> <div class="service_photo"> <figure style="background-image:url(<?php if ( has_post_thumbnail() ) {the_post_thumbnail_url();}?>)"></figure> </div> <div class="service_details"> <h2><a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2> <p><?php the_content(); ?> </p> </div> </div> </div> <?php endwhile; else : ?> <h2>Leider keine News vorhanden</h2> <?php endif; } add_shortcode( 'shortcode_eigene_news', 'eigene_news' );
Wenn ich diese Funktion nun in Visual Composer integrier, wird der gesamte Visual-Composer-Inhalt sehr oft wiederhold, und da wo mein Loop sein sollte wird die Else-Bedingung, Also „Leider keine News vorhanden“ angezeigt
Was habe ich falsch gemacht? Habe ich einen Fehler in der Loop oder hab ich etwas beim Integrieren in eine Funktion nicht ganz verstanden?
Danke für eure Hilfe
- Das Thema „Loop als Funktion speichern“ ist für neue Antworten geschlossen.