Supporto » Fixing WordPress » Colori Categoria

  • C87

    (@chiara1987)


    Ciao ragazzi,
    vorrei che alcuni articoli collegati a determinate categorie del mio sito, avessero dei colori diversi rispetto a tutto il resto del sito.
    Ovviamente non posso agire sul css perchè mi andrebbe a cambiare i colori di tutti gli articoli.

    Come posso fare?
    Esiste un plugin?

Stai visualizzando 7 risposte - dal 1 al 7 (di 7 totali)
  • Moderatore Rosetta Facciolini

    (@ramthas)

    Web Manager

    Ciao @chiara1987
    questo aiuta nel colorare le categorie: https://wordpress.org/plugins/colorful-categories/screenshots/

    Comunque è possibile agire sui CSS anche separatamente per ogni pagina o articolo
    creando un tema child che ti consente di fare modifiche senza alterare il tema: https://codex.wordpress.org/it:Temi_Child
    e inserendo nel file “functions.php” quanto segue:

    <?php /*INSERISCE MODIFICA CSS SU PAGINA E ARTICOLI WORDPRESS*/
    add_action('admin_menu', 'custom_css_hooks');
     add_action('save_post', 'save_custom_css');
     add_action('wp_head','insert_custom_css');
     function custom_css_hooks() {
     add_meta_box('custom_css', 'Custom CSS', 'custom_css_input', 'post', 'normal', 'high');
     add_meta_box('custom_css', 'Custom CSS', 'custom_css_input', 'page', 'normal', 'high');
     add_meta_box('custom_css', 'Custom CSS', 'custom_css_input', 'product', 'normal', 'high');  /*inserimento su pag. product di Woocommerce*/
     }
     function custom_css_input() {
     global $post;
     echo '<input type="hidden" name="custom_css_noncename" id="custom_css_noncename" value="'.wp_create_nonce('custom-css').'" />';
     echo '<textarea name="custom_css" id="custom_css" rows="5" cols="30" style="width:100%;">'.get_post_meta($post->ID,'_custom_css',true).'</textarea>';
     }
     function save_custom_css($post_id) {
     if (!wp_verify_nonce($_POST['custom_css_noncename'], 'custom-css')) return $post_id;
     if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return $post_id;
     $custom_css = $_POST['custom_css'];
     update_post_meta($post_id, '_custom_css', $custom_css);
     }
     function insert_custom_css() {
     if (is_page() || is_single()) {
     if (have_posts()) : while (have_posts()) : the_post();
     echo '<style type="text/css">'.get_post_meta(get_the_ID(), '_custom_css', true).'</style>';
     endwhile; endif;
     rewind_posts();
     }
     }

    Fa sapere se risolvi. Ciao 🙂

    Chi ha creato la discussione C87

    (@chiara1987)

    Ciao @ramthas,
    grazie mille per la gentilezza e la rapidità, se posso ne approfitto.

    Io ho l’esigenza di cambiare solo i colori di tutti gli articoli che appartengono a determinate categorie. Quindi, nella sezione Lifestyle, per esempio, vorrei che tutti gli elementi che solitamente sono caratterizzati dal colore azzurro, diventassero arancioni.

    In definitiva, non mi serve la possibilità di cambiare il singolo articolo ma il template della singola categoria che poi ospiterà x articoli che ne riceveranno i colori.

    Spero di non essere stata troppo complicata.

    Quindi…il plugin sarebbe in grado di fare quello che chiedo secondo te?
    Nel caso in cui decidessi di usare il php, il codice che mi hai consigliato continua ad essere quello giusto? posso integrarlo in qualsiasi parte di function.php?

    Grazie mille ancora

    Moderatore Rosetta Facciolini

    (@ramthas)

    Web Manager

    Utilizzare un tema child implica un minimo di conoscenza o cmq esperienza sulla realizzazione e funzione, dopodichè quasi tutto è fattibile 😉
    Il codice che ho postato va inserito esattamente così come lo vedi all’interno del file che avrai creato (x es. con un block notes) con il nome functions.php.
    Dopodichè ti trovi in ogni pagina una piccola schermata dove poter inserire il codice CSS che funzionerà unicamente su quella pagina (o post), come vedi da questo screen: http://www.openscreenshot.com/img/57f273b06cfc17-06897773

    Ma prima devi aver creato tutto il child seguendo la procedura che trovi qui: https://codex.wordpress.org/it:Temi_Child

    Tieni conto che necessitano un po di conoscenze anche di CSS per far funzionare il tutto… ma con un po di pazienza e tanta passione si può fare 😉

    Cmq bisogna capire bene che cosa intendi per:
    “cambiare solo i colori di tutti gli articoli che appartengono a determinate categorie”
    Puoi linkare il tuo sito e spiegare meglio se intendi colorare lo sfondo degli articoli, della pagina, etc.?

    Chi ha creato la discussione C87

    (@chiara1987)

    @ramthas io ho già un tema child, purtroppo è in locale e attende di essere completato per essere messo online ma non sono proprio così inesperta e cmq ho l’aiuto di chi è più bravo di me.

    Cmq la tua soluzione nn è per me risolutiva.
    Seguendo il tuo consiglio dovrei cmq modificare ogni post di una determinata categoria.
    Io, invece, vorrei creare un template per una determinata categoria.

    Ti faccio un esempio banalissimo.
    In questa pagina in cui stiamo parlando tutte le “informazioni sulla discussione” a sx sono nere,
    io vorrei che qui fossero nere ma che in un post di un’altra categoria (sezione) fossero rosse.

    Moderatore Rosetta Facciolini

    (@ramthas)

    Web Manager

    Allora potete seguire queste indicazioni: https://codex.wordpress.org/Category_Templates

    Ciao,
    se il tema lo supporta dovresti avere già il nome della categoria tra le classi del body, per cui viene semplice modificare il css del tema child per far apparire gli articoli di una determinata categoria in un colore differente.

    Se il tema non lo supporta puoi fare riferimento alla seguente pagina del codex, non è complicato creare una funzione per aggiungere la classe della categoria al body:

    body_class()

    Puoi aggiungere la classe indicante la categoria anche all’elemento article dentro il loop con la funzione post_class, che trovi al seguente indirizzo:

    https://codex.wordpress.org/Function_Reference/post_class

    Chi ha creato la discussione C87

    (@chiara1987)

    grazie mille ad entrambi!

Stai visualizzando 7 risposte - dal 1 al 7 (di 7 totali)
  • Il topic ‘Colori Categoria’ è chiuso a nuove risposte.