Content scheiden dmv de more-tag

VN:F [1.9.17_1161]
Rating: 0.0/5 (0 votes cast)

Er zijn meerdere manieren om je WordPress content in meerdere kolommen te zetten, in deze serie ga ik een aantal van die verschillende manieren behandelen. In dit deel gaan we de content scheiden door middel van de more-tag.

De SitePoint manier

Op de SitePoint website staat uitgelegd hoe je je content in meerdere kolommen kunt scheiden door middel van de more-tag. Die manier gaan we eerst behandelen.

functions.php

Onderstaande functie zet je in de functions.<a title="Zie ook Meerdere stylesheets in één, een update" href="http://hiranthi.nl/tutorials/meerdere-stylesheets-update/">php</a> van je theme.

<?<a title="Zie ook PHP bestand voor afmelden e-mailadres" href="http://hiranthi.nl/freebies/php-bestand-voor-afmelden-e-mailadres/">php</a>
// split content at the more tag and return an array
function split_content()
{
    <a title="Zie ook Alweer een nieuwe WPMU plugin" href="http://hiranthi.nl/wordpress/alweer-een-nieuwe-wpmu-plugin/">global</a> $more;
    $more = true;
    $content = preg_split('/<span id="more-d+"></span>/i', get_the_content('more'));
    for($c = 0, $csize = count($content); $c < $csize; $c++)
    {
        $content[$c] = apply_filters('the_content', $content[$c]);
    }
    return $content;
}
?>

Tekst weergeven in twee kolommen (dat komt dan op de plek van [wp]the_content[/wp]):

<?<a title="Zie ook Voeg datum toe aan post inhoud" href="http://hiranthi.nl/tutorials/voeg-datum-toe-aan-post-inhoud/">php</a>
// original content display
// the_content('Read the rest of this page &raquo;'); 

// split content into array
$content = split_content(); 

// output first content sections in column1
echo '
<div id="column1">'. $content[0] .'</div>

'; 

// output remaining content sections in column2
echo '
<div id="column2">'. implode(array_shift($content)) .'</div>

';
?>

Heb je de more-tag meerdere malen gebruikt? Je kunt de content ook in meerdere kolommen weergeven:

<?<a title="Zie ook Meerdere stylesheets in één" href="http://hiranthi.nl/tutorials/meerdere-stylesheets-in-een/">php</a>
for ( $i = 0; $i < count($content); $i++ )
{
    echo '
<div id="column'.$i.'">'. $content[$i] .'</div>

';
}
?>

Een andere manier

Er is ook nog een andere manier om je more-tag te gebruiken. Het nadeel van deze manier is dat je de more-tag in z’n eigen paragraaf moet neerzetten, anders zou het nog weleens tot verrassingen kunnen leiden.

<?<a title="Zie ook Domeinhouder voor verschillende domeinnamen" href="http://hiranthi.nl/tutorials/domeinhouder-verschillende-domeinnamen/">php</a>
$morestring = '

<!--more-->

';
$explodemore = explode($morestring, $post->post_content);
echo '
<div id="column1">'. $explodemore[0] .'</div>

'; // voor de more-tag
echo '
<div id="column1">'. $explodemore[1] .'</div>

'; // na de more-tag
?>

Heb je de more-tag meerdere malen gebruikt? Je kunt de content ook in meerdere kolommen weergeven (zelfde manier als voor de SitePoint code):

<?<a title="Zie ook Eigen widget maken" href="http://hiranthi.nl/tutorials/eigen-widget-maken/">php</a>
for ( $i = 0; $i < count($explodemore); $i++ )
{
    echo '
<div id="column'.$i.'">'. $explodemore[$i] .'</div>

';
}
?>
  • Facebook
  • Twitter
  • Delicious
  • Digg
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

2 Responses to Content scheiden dmv de more-tag
  1. Sjoerd Boerrigter | Ontwerpstudio Trendwerk Beantwoorden

    Wij hebben hier een plugin voor ontwikkeld. Zie: http://plugins.trendwerk.nl/documentation/multiple-content-blocks/

    VA:F [1.9.17_1161]
    Rating: 0 (from 0 votes)
    • hiranthi Beantwoorden

      Deze tutorial gaat over het scheiden van de content met behulp van de more-tag. In een volgende post (“Kolommen mbv plugins”, staat ook onder “Aankomende posts”) behandel ik plugins waarmee je meerdere kolommen kunt maken (waar ik die van jullie ook in noem).

      De post is ook onderdeel van een serie (deel 1), wat over het algemeen betekend dat er nog meerdere mogelijkheden behandeld gaan worden ;)

      VA:F [1.9.17_1161]
      Rating: 0 (from 0 votes)

Geef een reactie

Your email address will not be published. Please enter your name, email and a comment.

*

De volgende HTML tags en attributen zijn toegestaan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <div align="" class="" dir="" id="" lang="" style="" xml:lang=""> <pre class="">

CommentLuv badge