Un utente ha chiesto
Categoria: Twenty Twenty di WordPress
Domanda: Venti ventitré colonne piè di pagina

Ciao a tutti,

Fino al tema del 2020, ho usato uno snippet di codice per creare 3-4 colonne a piè di pagina, ma ora sembra ridondante.

Qualcuno può spiegare come posso ottenere un piè di pagina di 3 colonne per favore?

  • (@alchymyth)

    qual è il codice per questo frammento?
    eventuali messaggi di errore quando si prova lo stesso frammento su Twenty Twenty?

    vuoi aggiungere una terza area widget separata per il piè di pagina e distribuire le tre aree in modo uniforme sulle tre colonne?

    hai letto https://developer.wordpress.org/themes/functionality/sidebars/?

    (@domainsupport)

    Abbiamo sviluppato un plugin che inietta fino a quattro colonne di widget e cambia la larghezza di conseguenza.

    Per prima cosa devi salvare la nuova barra laterale …

    function new_footer_widgets_init() {
    
                	        register_sidebar(array(
            				    'name'          => __( 'Footer #3', 'options-for-twenty-twenty' ),
            				    'id'            => 'sidebar-3',
            				    'description'   => __( 'Widgets in this area will be displayed in the third column in the footer.', 'options-for-twenty-twenty' ),
            		            'before_title'  => '<h2 class="widget-title subheading heading-size-3">',
            		            'after_title'   => '</h2>',
                                'before_widget' => '<div class="widget %2$s"><div class="widget-content">',
            		            'after_widget'  => '</div></div>',
                            ));
    
    }
    add_action('widgets_init', array($this, 'new_footer_widgets_init'), 11);

    … Quindi devi inserire la barra laterale nel piè di pagina e utilizzare un po ‘di javascript puro per spostarlo nella posizione giusta …

    function get_new_footer_sidebars($index, $has_widgets) {
    
    if ($index == 'sidebar-2') {
    
    if (is_active_sidebar('sidebar-3')) {
    
    ?>
    <div class="footer-widgets column-three grid-item">
    <?php dynamic_sidebar( 'sidebar-3' ); ?>
    </div>
    <script type="text/javascript">
        (function () {
            var sidebarWrapper = document.getElementsByClassName('footer-widgets-wrapper')[0],
            newSidebar = document.getElementsByClassName('footer-widgets-wrapper')[0].getElementsByClassName('column-three')[0];
            sidebarWrapper.appendChild(newSidebar);
        }());
    </script>
    <?php
    
    }
    
    }
    
    }
    add_action('dynamic_sidebar_after', 'get_new_footer_sidebars', 10, 2);

    … E poi devi usare il seguente CSS per ridimensionare la nuova colonna …

    @media (min-width: 700px) {
        .footer-widgets {
            width: 33.3333333333%
        }
    }

    Oliver

    (@thianbrodie)

    Ciao Oliver,

    Sembra esattamente quello che sto cercando, ma quando metto il nuovo registro inserendo il codice nel functions.php del mio tema figlio 2020, commette errori critici sul sito.


    / * accoda script e stili del tema principale * /
    function ninety_styles () {
    wp_enqueue_style (‘parent’, get_template_directory_uri (). ‘/style.css’);
    }
    add_action (‘wp_enqueue_scripts’, ‘venti-venti_stili’);

    / * Da Oliver * /
    funzione new_footer_widgets_init () {

    register_sidebar (array (
    ‘nome’ => __ (‘Piè di pagina # 3’, ‘opzioni-per-venti-venti’),
    ‘id’ => ‘sidebar-3’,
    ‘descrizione’ => __ (‘I widget in quest’area verranno visualizzati nella terza colonna del piè di pagina.’, ‘opzioni-per-venti-venti’),
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘

    ‘,
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ));

    }
    add_action (‘widgets_init’, array ($ this, ‘new_footer_widgets_init’), 11);

    Thian

    (@domainsupport)

    Ciao Thian,

    Colpa mia, la riga finale nel primo lotto di codice dovrebbe essere …

    add_action('widgets_init', 'new_footer_widgets_init', 11);

    Scusate!

    Modificherei la risposta originale, ma non riesco a farlo.

    Oliver

    (@thianbrodie)

    Perfetto!!

    Funziona, grazie mille per il tuo tempo !!

    Thian

    (@domainsupport)

    Nessun problema, il nostro plug-in Opzioni per Twenty Twenty ha molte funzionalità come questa.

    Oliver

    (@thianbrodie)

    Ottimo, controllerò il plugin

    grazie ancora

    Thian

Hai risolto il tuo problema?

0 / 0

Lascia un commento 0

Il tuo indirizzo email non sarà pubblicato. Required fields are marked *