web-dev-qa-db-fra.com

Ajouter une classe ou un identifiant div dans the_content ()

J'essaie de créer un bloc d'annonces à placer sur un seul article (single.php), de sorte que la classe ou l'id div reste aligné et que le contenu de l'article soit encapsulé autour de celui-ci. J'ai vérifié le single.php et c'est la seule pièce de code que j'ai remarquée, c'est ce qui affiche la publication.

<div class="entry entry-content">
                <?php the_content(); ?>
                <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'themejunkie' ), 'after' => '</div>' ) ); ?>

J'ai essayé d'ajouter le code à la fois au-dessus du div 'entry-content' et aussi après le contenu, mais avec les deux méthodes, le div est affiché au début ou à la fin du contenu de l'article.

Quelqu'un peut-il me dire quels fichiers examiner dans l'ajout de cela?

3
Sledge81

Vous devez placer votre bloc d'annonce juste avant <?php the_content(); ?> dans un calque div séparé et y ajouter des css. Par exemple.

single.php

<div class="entry entry-content">
    <div class="advertisement">
        <p>Your advertisement</p>
    </div>

    <?php the_content(); ?>
</div>

CSS

div.advertisement {
    float: left;
    width: 150px;
    padding: 0px 10px 10px 0px;
}
2
rofflox

Pourquoi ne pas simplement vous connecter au crochet de filtre the_content et ajouter votre code à the_content()? par exemple.:

function mytheme_content_ad( $content ) {
    $myadcode = '<div class="someclas">';
    $myadcode .= 'some string with the ad code';
    $myadcode .= '</div>';

    $filteredcontent = $myadcode . $content;

    return $filteredcontent;
}
add_filter( 'the_content', 'mytheme_content_ad' );

Vous devrez peut-être rendre la fonction un peu plus sophistiquée que cela, mais cela devrait traduire l'idée générale.

7
Chip Bennett