Visualizzazione del contenuto di un singolo articolo

7 set 2014, 13:21:36
Visualizzazioni: 75.2K
Voti: 5

Come posso visualizzare il contenuto di un singolo articolo? Il mio codice:

if (is_single()){
    get_header();
    get_sidebar('left-article');
    render_article();
    get_footer();
}

In render_article richiamo single_post_title() per ottenere il titolo dell'articolo. Tuttavia non so come ottenere l'ora e i contenuti dell'articolo poiché non riesco a trovare funzioni come single_post_content() o single_post_time().

1
Commenti

Devi prima studiare questo

Nilambar Sharma Nilambar Sharma
7 set 2014 13:28:38
Tutte le risposte alla domanda 5
0
13
  1. Crea un file chiamato single.php. Questo recupererà automaticamente tutti i tuoi singoli articoli. Per maggiori informazioni sulla gerarchia dei template di WordPress, leggi il Codex

  2. All'interno di single.php, esegui il loop predefinito e richiama header.php, sidebar.php e footer.php

    <?php get_header(); ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    
     <?php the_title(); ?>
     <?php the_content(); ?>
     <?php echo get_the_date(); ?>
    
    <?php endwhile; ?>
    <?php endif; ?>
    <?php get_sidebar(); ?>
    <?php get_footer(); ?>
    
7 set 2014 13:39:53
0

Puoi utilizzare la funzione qui sotto per ottenere il contenuto di un articolo di WordPress

     <?php echo get_the_content(); ?>

e puoi usare questa funzione per ottenere il titolo

    <?php echo get_the_title(); ?>

per ottenere la data puoi usare questa funzione

    <?php echo get_the_date(); ?>
30 mar 2018 15:30:17
0
function my_category_templates($single_template) {
    global $post;

    if ( in_category( 'Offerte' )) {
        $single_template = dirname( __FILE__ ) . '/single-offer.php';
    }

    // Copia il codice sopra per le altre categorie

    return $single_template;
}

add_filter( "single_template", "my_category_templates" );
16 nov 2016 14:27:57
0

Utilizza get_post() per ottenere un post specifico

get_post()

Esempio:

<?php $postData = get_post( $id, $output, $filter ); 

echo "<pre>";
print_r($postData);
?>

https://developer.wordpress.org/reference/functions/get_post/

https://www.tipsandtricks-hq.com/query-or-show-a-specific-post-in-wordpress-php-code-example-44

16 gen 2017 08:28:37
0

Questa è una domanda antica, ma nessuna delle risposte qui presenti indica il modo corretto di farlo, quindi voglio fornire un'alternativa migliore. Non è necessario utilizzare un mucchio di funzioni globali casuali o fare affidamento su uno stato globale nebuloso creato da questa terribile cosa chiamata "Loop".

Se stai visualizzando il contenuto di un singolo post, allora devi creare un file chiamato "single.php" all'interno della directory del tuo tema. (https://developer.wordpress.org/themes/basics/template-hierarchy/) Questo sarà il template per i tuoi post.

single.php

<?php

    namespace mytheme; // Dovresti designare un namespace per il tuo tema in modo che non entri in conflitto con WordPress, il suo tema genitore o qualsiasi plugin che potresti aver installato.

    defined('ABSPATH') || exit; // Esci se il file viene eseguito direttamente invece che da WordPress.

    $post = get_queried_object(); // Questo oggetto contiene tutti i dati relativi al post di cui hai bisogno. Non è necessario utilizzare un mucchio di funzioni globali casuali o il Loop per ottenere i dati del post. Se vuoi vedere il contenuto di questo oggetto, usa var_dump durante il debug.

    if (!$post) {
        $wp_query->set_404();
        status_header(404);
        http_response_code(404);
        exit;
    }

    get_header();
?>

<main>
    <h1><?php echo strip_tags($post->post_title); ?></h1>
    <?php if ($post->post_content) { ?>
        <div>
            <?php echo do_shortcode(apply_filters('the_content', $post->post_content)); ?>
        </div>
    <?php } ?>
</main>

<?php get_footer(); ?>
19 dic 2022 22:18:54