La sidebar a disparu depuis un bug lors de la mise à jour de wordpress (Créer un compte)

  • Statut : non résolu
15 sujets de 46 à 60 (sur un total de 122)
  • Auteur
    Messages
  • #1033220
    lulu2006
    Membre
    Chevalier WordPress
    409 contributions

    Alors c’est dans simple page composer qu’il y a surement la sidebar a activé. Je ne peux pas vous aidez plus annelise, n’utilisant pas ce genre de constructeur de page… :(

    #1033221
    annelise
    Participant
    Padawan WordPress
    96 contributions

    dommage! merci quand même!!!

    #1033222
    annelise
    Participant
    Padawan WordPress
    96 contributions

    Bonne soirée

    #1033223
    lulu2006
    Membre
    Chevalier WordPress
    409 contributions

    bonne soirée, au plaisir.

    #1033213
    Tche
    Participant
    Chevalier WordPress
    182 contributions

    Bonjour Annelise,

    Il semble que tu as un peu avancé depuis hier. Il faudrait effectivement vérifier si le modèle utilisé pour la page blog est le même que pour la page d’accueil. Si ce n’est pas le cas, choisis le modèle utilisé pour le blog pour la page d’accueil.
    (A première vue, la page d’accueil est dynamique puisqu’elle semble présenter tes derniers articles.)

    Si ceci ne fonctionne pas (attention a bien vider le cache de ton navigateur avant de rafraichir):
    1/ Dans l’admin, peux-tu vérifier dans apparence>thèmes, les thèmes installés.. et le fait qu’il n’y a pas un espresso-child ou espresso-enfant à activer?
    2/ Toujours dans l’admin, peux-tu vérifier dans apparence>éditeur, les modèles installés (en particulier ceux qui commencent par page-xxxx.php et sidebar-xxxx.php comme nom de fichier (inscrit en plus petit sous le nom visuel et se terminant en tout cas par .php)…

    …La suite dépend de ce que tu veux faire..

    Que ce soit avec Twenty-thirteen ou avec Espresso, si tu veux les personnaliser, tu devrais créer un thème-enfant de manière à garder tes personnalisation en cas de mise à jour.

    Pour cela comme pour faire une sauvegarde complète du site avant la prochaine mise à jour, tu as besoin d’accéder à la base de données et aux fichiers du site:

    Pour la BDD (phpmyadmin ou mysql…) celle-ci est accessible via to navigateur web (firefox, chrome…) à l’aide des informations de ton hébergeur, infomaniak (adresse, serveur, nom de la base et mot de passe)

    Pour les fichiers (FTP), tu auras besoin d’un programme comme Filezilla (à télécharger gratuitement) et des codes d’accès de ton hébergeur.

    A bientôt,

    #1033224
    annelise
    Participant
    Padawan WordPress
    96 contributions

    Merci beaucoup Tche!!!
    Je n’ai pas de thème enfant c’est certain! Le modèle de sidebar sur ma page blog est le mème que sur ma page d’accueil. Hier j’ai passé mon temps à farfouiller un peu partout et me suis rendue compte que je ne peux faire aucune modification de ma page d’accueil (ni enlever le liseré rose juste en bas de mon slider à droite qui constitue ma sidebar, en effet si je clique droit sur ce liseré et fait examiner l’élément ça donne ça:

    .vwspc-section-sidebar .vw-sticky-sidebar-wrapper .vw-sticky-sidebar {
    background-color: #EADAE3;
    padding: 10px;
    }
    * {
    box-sizing: border-box;
    }
    body, cite {
    font-family: Underdog;
    font-weight: 400;
    font-style: normal;
    color: #3E3E3E;
    font-size: 18px;
    visibility: visible;
    }
    body {
    line-height: 1.75em;
    }
    body {
    font-family: “Helvetica Neue”,Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 1.42857;
    color: #333;
    }
    html {
    font-size: 10px;
    }

    Comme je te l’ai dit plus haut aucune modification possible!!! Ni enlever ce liseré en supprimant la sidebar latérale droite ni mettre la sidebar à gauche!!! rien!!!
    A l’inverse tout est possible sur la page blog!
    Du coup j’ai essayé de créer une seconde page d’accueil que j’ai appelé accueil1 et pareil IMPOSSIBLE d’insérer une sidebar que ce soit à gauche ou à droite et j’ai toujours ce liseré rose!!! je ne comprends rien!!!
    Comme tu me l’as dit voici ce qui est inscrit dans mon éditeur concernant

    modèle de page VW simple page composer :

    <?php
    /*
    Template Name: VW Simple Page Composer
    */
    get_header(); ?>

    concernant le Modèle pour la page d’accueil :

    <div class="vw-page-wrapper clearfix “>

    Concernant sidebars :

    <?php

    add_action( ‘after_setup_theme’, ‘vw_setup_sidebars’ );
    function vw_setup_sidebars() {
    add_action( ‘widgets_init’, ‘vw_register_sidebars’ );
    }

    /*


    * Register sidebars
    *


    */
    if ( ! function_exists( ‘vw_register_sidebars’ ) ) {
    function vw_register_sidebars() {
    /**
    * Blog widget sidebar
    */

    register_sidebar( array(
    ‘name’ => __( ‘Blog Right Sidebar’, ‘envirra’ ),
    ‘id’ => ‘blog-right-sidebar’,
    ‘description’ => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    register_sidebar( array(
    ‘name’ => __( ‘Blog Left Sidebar’, ‘envirra’ ),
    ‘id’ => ‘blog-left-sidebar’,
    ‘description’ => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    /**
    * Page widget sidebar
    */
    register_sidebar( array(
    ‘name’ => __( ‘Page Sidebar’, ‘envirra’ ),
    ‘id’ => ‘page-sidebar’,
    ‘description’ => __( ‘These are widgets for the static page.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    /**
    * Footer sidebar
    */
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 1’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-1’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 2’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-2’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 3’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-3’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 4’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-4’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    }

    Je ne sais pas si tu t’y connais en CSS??? peut être y a t’il une virgule en trop 😆

    #1033225
    Tche
    Participant
    Chevalier WordPress
    182 contributions

    Voici ta réponse avec des balises codes (le grand C)

    Merci beaucoup Tche!!!
    Je n’ai pas de thème enfant c’est certain! Le modèle de sidebar sur ma page blog est le mème que sur ma page d’accueil. Hier j’ai passé mon temps à farfouiller un peu partout et me suis rendue compte que je ne peux faire aucune modification de ma page d’accueil (ni enlever le liseré rose juste en bas de mon slider à droite qui constitue ma sidebar, en effet si je clique droit sur ce liseré et fait examiner l’élément ça donne ça:

    .vwspc-section-sidebar .vw-sticky-sidebar-wrapper .vw-sticky-sidebar {
        background-color: #EADAE3;
        padding: 10px;
    }
    * {
        box-sizing: border-box;
    }
    body, cite {
        font-family: Underdog;
        font-weight: 400;
        font-style: normal;
        color: #3E3E3E;
        font-size: 18px;
        visibility: visible;
    }
    body {
        line-height: 1.75em;
    }
    body {
        font-family: “Helvetica Neue”,Helvetica,Arial,sans-serif;
        font-size: 14px;
        line-height: 1.42857;
        color: #333;
    }
    html {
        font-size: 10px;
    }

    Comme je te l’ai dit plus haut aucune modification possible!!! Ni enlever ce liseré en supprimant la sidebar latérale droite ni mettre la sidebar à gauche!!! rien!!!
    A l’inverse tout est possible sur la page blog!
    Du coup j’ai essayé de créer une seconde page d’accueil que j’ai appelé accueil1 et pareil IMPOSSIBLE d’insérer une sidebar que ce soit à gauche ou à droite et j’ai toujours ce liseré rose!!! je ne comprends rien!!!
    Comme tu me l’as dit voici ce qui est inscrit dans mon éditeur concernant

    modèle de page VW simple page composer :

    
    
    <div class="vw-page-wrapper clearfix">
        
    </div>

    concernant le Modèle pour la page d’accueil :

    
    
    <div class="vw-page-wrapper clearfix “>
        <div class="container">
            <div class="row">
    
                <div class="vw-page-content" role="main">
                   
                    
    
                        <div class="vw-page-title-box clearfix">
                            <div class="vw-page-title-box-inner">
                                <h1 class="vw-page-title">
                                    
    
                                        
    
                                    
    
                                        
    
                                    
                                </h1>
                            </div>
                        </div>
    
                        
                            <div class="vw-no-search-result"></div>
                        
    
                    
    
                    
    
                        
    
                    
    
                        
    
                            
    
                            
    
                            
    
                            
    
                        
    
                    
                   
                </div>
    
                
           
            </div>
        </div>
    
    </div>

    Concernant sidebars :

     __( ‘Blog Right Sidebar’, ‘envirra’ ),
                ‘id’   => ‘blog-right-sidebar’,
                ‘description’   => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
    
            register_sidebar( array(
                ‘name’ => __( ‘Blog Left Sidebar’, ‘envirra’ ),
                ‘id’   => ‘blog-left-sidebar’,
                ‘description’   => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
    
            /**
             * Page widget sidebar
             */
            register_sidebar( array(
                ‘name’ => __( ‘Page Sidebar’, ‘envirra’ ),
                ‘id’   => ‘page-sidebar’,
                ‘description’   => __( ‘These are widgets for the static page.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
           
            /**
             * Footer sidebar
             */
            register_sidebar( array(
                ‘name’ => __( ‘Footer Sidebar 1’, ‘envirra’ ),
                ‘id’   => ‘footer-sidebar-1’,
                ‘description’   => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
            register_sidebar( array(
                ‘name’ => __( ‘Footer Sidebar 2’, ‘envirra’ ),
                ‘id’   => ‘footer-sidebar-2’,
                ‘description’   => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
            register_sidebar( array(
                ‘name’ => __( ‘Footer Sidebar 3’, ‘envirra’ ),
                ‘id’   => ‘footer-sidebar-3’,
                ‘description’   => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
            register_sidebar( array(
                ‘name’ => __( ‘Footer Sidebar 4’, ‘envirra’ ),
                ‘id’   => ‘footer-sidebar-4’,
                ‘description’   => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
                ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
                ‘after_widget’  => ‘</div>‘,
                ‘before_title’  => ‘<h3 class="widget-title"><span>‘,
                ‘after_title’   => ‘</span></h3>‘
            ) );
        }

    Je ne sais pas si tu t’y connais en CSS??? peut être y a t’il une virgule en trop lol

    #1033226
    annelise
    Participant
    Padawan WordPress
    96 contributions

    Merci! C’est mieux ainsi!
    A première vue tu penses que quelque chose cloche???

    #1033227
    annelise
    Participant
    Padawan WordPress
    96 contributions

    pourquoi l’élément du mon liseré rose s’appelle sticky sidebar wrapper. Penses-tu que ce soit normal?

    #1033228
    Tche
    Participant
    Chevalier WordPress
    182 contributions

    Quelques questions:

    1. Où as-tu trouvé les codes concernant les sidebars? (👏on se rapproche, en tout cas)
    2. Le modèle ‘VW simple page composer’ est-il celui utilisé pour la page blog?
    3. Qu’as-tu comme (autres) modèles de pages disponibles dans ton thème (voir dans admin>apparence>éditeur, les fichiers qui commencent par “page” et se terminent par .php)?
    4. Qu’as-tu comme modèle de sidebars disponibles dans ton thème (voir dans admin>apparence>éditeur, les fichiers qui commencent par “page” et se terminent par .php)?

    Je ne sais pas si tu t’y connais en CSS??? peut être y a t’il une virgule en trop lol

    Une clarification;
    – Le css définit le style de tes pages (c’est par exemple les premières règles que tu as envoyées dans ton msg précédent
    – les autres codes envoyés sont un mélange de php et de html.

    Je crois que le problème de sidebar ne vient pas de ton css mais d’un problème d’appel en php (j’ai eu un souci de majuscule dans les codes suite à la MAJ de wp… résolu ce matin avec l’aide d’un contributeur)

    Pour le résoudre:
    – Soit on retrouve l’origine et le code source de la sidebar de la page d’accueil et on le corrige
    – Soit on retrouve l’origine et le code source de la sidebar de la page blog et on l’intègre dans le template de la page d’accueil
    – Soit on crée un nouveau modèle avec….

    La solution dépend de ta réponse aux 4 questions

    #1033229
    Tche
    Participant
    Chevalier WordPress
    182 contributions

    pourquoi l’élément du mon liseré rose s’appelle sticky sidebar wrapper. Penses-tu que ce soit normal?

    Oui, en fait le wrapper se fixe à un moment quand on scroll… ile est donc “sticky” aucun problème de css 😉 même si ça risque de gêner l’affichage de tous les widgets de la sidebar mais avançons point par point. Au pire on utilisera les définitions de style de la plage blog.

    #1033230
    annelise
    Participant
    Padawan WordPress
    96 contributions

    Merci infiniment Tche pour ton aide!!! je n’ai absolument rien compris concernant le css, php, htlm mais je vais tâcher de te répondre au mieux!!!
    1-si tu parles des premiers codes envoyés concernant la sidebar, je l’ai trouvé en cliquant droit sur le liseré rose. Pour les autres codes plus bas dans le message, je les ai trouvés dans l’éditeur comme tu me l’as dit.
    2- le modèle VW simple page composer est celui de ma page d’accueil mais si je change en modèle par défaut rien ne change (seule l’administration de la page d’accueil change et j’ai une zone texte qui apparait -j’ai d’ailleurs essayé d’écrire quelque chose et rien n’apparait d’ailleurs lorsque je fais aperçu! comme je te l’ai dit aucune modifiaction n’est possible sur cette page ‘accueil à présent!)
    je réponds aux 2 derniers points dans le message qui suit!

    #1033231
    annelise
    Participant
    Padawan WordPress
    96 contributions

    4- voici tout ce que j’ai concernant les sidebars en php pris dans l’éditeur! désolée je ne sais pas les mettre avec des balises codes!!!

    nom sélectionné à droite : colonne latérale (sidebar. php) :
    <?php
    $sidebar_position = vw_get_sidebar_position();
    $has_left_sidebar = in_array( $sidebar_position, array( ‘left’, ‘mini-content-right’, ‘left-content-mini’, ‘content-mini-right’ ) );
    $has_right_sidebar = in_array( $sidebar_position, array( ‘right’, ‘mini-content-right’, ‘left-content-mini’, ‘content-mini-right’ ) );

    if ( $sidebar_position != ‘none’ ) : ?>

    <aside class="vw-page-sidebar vw-page-sidebar-left" >
    <meta content=”Left Sidebar”>

    <aside class="vw-page-sidebar vw-page-sidebar-right" >
    <meta content=”Right Sidebar”>

    nom sélectionné à droite : sidebar.php ( inc/sidebars.php) :

    <?php

    add_action( ‘after_setup_theme’, ‘vw_setup_sidebars’ );
    function vw_setup_sidebars() {
    add_action( ‘widgets_init’, ‘vw_register_sidebars’ );
    }

    /*


    * Register sidebars
    *


    */
    if ( ! function_exists( ‘vw_register_sidebars’ ) ) {
    function vw_register_sidebars() {
    /**
    * Blog widget sidebar
    */

    register_sidebar( array(
    ‘name’ => __( ‘Blog Right Sidebar’, ‘envirra’ ),
    ‘id’ => ‘blog-right-sidebar’,
    ‘description’ => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    register_sidebar( array(
    ‘name’ => __( ‘Blog Left Sidebar’, ‘envirra’ ),
    ‘id’ => ‘blog-left-sidebar’,
    ‘description’ => __( ‘These are widgets for the Blog sidebar.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    /**
    * Page widget sidebar
    */
    register_sidebar( array(
    ‘name’ => __( ‘Page Sidebar’, ‘envirra’ ),
    ‘id’ => ‘page-sidebar’,
    ‘description’ => __( ‘These are widgets for the static page.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );

    /**
    * Footer sidebar
    */
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 1’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-1’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 2’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-2’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 3’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-3’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    register_sidebar( array(
    ‘name’ => __( ‘Footer Sidebar 4’, ‘envirra’ ),
    ‘id’ => ‘footer-sidebar-4’,
    ‘description’ => __( ‘These are widgets for the Footer.’, ‘envirra’ ),
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    ) );
    }
    }

    nom sélectionné à droite : custom-sidebar-generator.php (components/custom-sidebar-generator.php) :

    <?php
    /**
    * Name : Custom Sidebars Generator
    * Description : This plugin generates as many sidebars as you need. Then allows you to place them on any page you wish. This is a modified version of “Sidebars Generator” plugin by Kyle Getson. http://wordpress.org/extend/plugins/sidebar-generator/
    * Version : 1.0.3
    * Last edit : May 08, 2013 18:49
    * Author : Envirra
    * Credits : Smartik – http://smartik.ws/
    */

    add_action( ‘after_setup_theme’, ‘vw_setup_sidebar_generator’ );
    function vw_setup_sidebar_generator() {
    add_action(‘init’, array(‘SidebarGenerator’,’init’));
    add_action(‘admin_menu’, array(‘SidebarGenerator’,’admin_menu’));
    add_action(‘admin_print_scripts’, array(‘SidebarGenerator’,’admin_print_scripts’));
    add_action(‘wp_ajax_add_sidebar’, array(‘SidebarGenerator’,’add_sidebar’) );
    add_action(‘wp_ajax_remove_sidebar’, array(‘SidebarGenerator’,’remove_sidebar’) );
    }

    class SidebarGenerator {

    /**
    * Initiate the function
    *
    * Hook the function on to specific actions.
    *
    * @since 1.0
    */
    function SidebarGenerator(){

    }

    /**
    * Register sidebars
    *
    * Go through each sidebar and register it
    *
    * @since 1.0
    */
    static function init(){

    $sidebars = SidebarGenerator::get_sidebars();

    if(is_array($sidebars)){
    foreach($sidebars as $sidebar){
    $sidebar_class = SidebarGenerator::name_to_class($sidebar);
    register_sidebar(array(
    ‘name’ => $sidebar,
    ‘id’ => sanitize_title( $sidebar ),
    ‘description’ => ‘These are widgets.’,
    ‘before_widget’ => ‘

    ‘,
    ‘after_widget’ => ‘

    ‘,
    ‘before_title’ => ‘

    ‘,
    ‘after_title’ => ‘


    // ‘before_widget’ => ‘

    ‘,
    // ‘before_title’ => ‘

    ‘,
    // ‘after_title’ => ‘

    ‘,
    ));
    }
    }
    }

    /**
    * Load WP Ajax
    *
    * Call WP admin AJAX and register js function for add/remove a sidebar
    *
    * @since 1.0
    */
    static function admin_print_scripts(){
    wp_print_scripts( array( ‘sack’ ));
    ?>

    function add_sidebar( sidebar_name )
    {

    var mysack = new sack(“” );

    mysack.execute = 1;
    mysack.method = ‘POST’;
    mysack.setVar( “action”, “add_sidebar” );
    mysack.setVar( “sidebar_name”, sidebar_name );
    mysack.encVar( “cookie”, document.cookie, false );
    mysack.onError = function() { alert(‘Ajax error. Cannot add sidebar’ )};
    mysack.runAJAX();
    return true;
    }

    function remove_sidebar( sidebar_name,num )
    {

    var mysack = new sack(“” );

    mysack.execute = 1;
    mysack.method = ‘POST’;
    mysack.setVar( “action”, “remove_sidebar” );
    mysack.setVar( “sidebar_name”, sidebar_name );
    mysack.setVar( “row_number”, num );
    mysack.encVar( “cookie”, document.cookie, false );
    mysack.onError = function() { alert(‘Ajax error. Cannot remove sidebar. Try to remove it after page reload.’ )};
    mysack.runAJAX();
    //alert(‘hi!:::’+sidebar_name);
    return true;
    }

    <?php
    }

    /**
    * Add sidebar
    *
    * This function creates a new sidebar
    *
    * @since 1.0
    */
    static function add_sidebar(){
    $sidebars = SidebarGenerator::get_sidebars();
    $name = trim( str_replace(array(“n”,”r”,”t”),”,$_POST) );
    $id = SidebarGenerator::name_to_class($name);

    if(isset($sidebars[$id])){
    die(“alert(‘Sidebar already exists, please use a different name.’)”);
    }
    if($name == ‘null’){
    die();
    }
    elseif($name == ”){
    die(“alert(‘Please specify a name for this sidebar.’)”);
    }

    $sidebars[$id] = $name;
    SidebarGenerator::update_sidebars($sidebars);

    $js = “
    var tbl = document.getElementById(‘sbg_table’);
    var lastRow = tbl.rows.length;
    // if there’s no header row in the table, then iteration = lastRow + 1
    var iteration = lastRow;
    var row = tbl.insertRow(lastRow);

    // left cell
    var cellLeft = row.insertCell(0);
    var textNode = document.createTextNode(‘$name’);
    cellLeft.appendChild(textNode);
    cellLeft.setAttribute(‘style’, ‘padding-top: 10px; padding-bottom: 10px; font-weight: 700; color: #FF430A;background:#FFE4E8;’);

    //second cell
    var cellLeft = row.insertCell(1);
    codeClass = document.createElement(‘code’);
    codeText = document.createTextNode(‘side-$id’);
    codeClass.setAttribute(‘style’, ‘padding: 4px 7px; border: 1px solid #bbb;’);

    codeClass.appendChild(codeText);
    cellLeft.appendChild(codeClass);
    cellLeft.setAttribute(‘style’, ‘padding-top: 10px; padding-bottom: 10px;background:#FFE4E8;’);

    //third cell
    var cellLeft = row.insertCell(2);
    codeClass = document.createElement(‘code’);
    codeText = document.createTextNode(‘[sidebar name=”$name”]’);
    codeClass.setAttribute(‘style’, ‘padding: 4px 7px; border: 1px solid #bbb;’);

    codeClass.appendChild(codeText);
    cellLeft.appendChild(codeClass);
    cellLeft.setAttribute(‘style’, ‘padding-top: 10px; padding-bottom: 10px;background:#FFE4E8;’);

    //last cell

    var rowc = document.getElementById(‘sbg_table’).rows.length;
    rowc = parseInt(rowc-1);

    var cellLeft = row.insertCell(3);
    removeLink = document.createElement(‘a’);
    linkText = document.createTextNode(‘remove’);
    removeLink.setAttribute(‘onclick’, ‘return remove_sidebar_link(‘$name’,’+rowc+’);return false;’);
    removeLink.setAttribute(‘href’, ‘javascript:void(0)’);
    removeLink.setAttribute(‘style’, ‘font-weight: 700; color: #D50020’);

    removeLink.appendChild(linkText);
    cellLeft.appendChild(removeLink);

    cellLeft.setAttribute(‘style’, ‘padding-top: 10px; padding-bottom: 10px;background:#FFE4E8;’);
    “;

    die( “$js”);
    }

    /**
    * Remove sidebar
    *
    * This function remove a sidebar already created with SidebarGenerator
    *
    * @since 1.0
    */
    static function remove_sidebar(){
    $sidebars = SidebarGenerator::get_sidebars();
    $name = str_replace(array(“n”,”r”,”t”),”,$_POST);
    $id = SidebarGenerator::name_to_class($name);
    if(!isset($sidebars[$id])){
    die(“alert(‘Sidebar does not exist.’)”);
    }
    $row_number = $_POST;
    unset($sidebars[$id]);
    SidebarGenerator::update_sidebars($sidebars);
    $js = “
    var tbl = document.getElementById(‘sbg_table’);
    tbl.deleteRow($row_number)

    “;
    die($js);
    }

    /**
    * Admin menu
    *
    * This function creates an admin menu under Appearance tab
    *
    * @since 1.0
    */
    static function admin_menu(){
    add_submenu_page(‘themes.php’, ‘Sidebars’, ‘Sidebars’, ‘manage_options’, __CLASS__, array(‘SidebarGenerator’,’admin_page’));
    }

    /**
    * Admin page
    *
    * This function creates settings page
    *
    * @since 1.0
    */
    static function admin_page(){
    ?>

    function remove_sidebar_link(name,num){
    answer = confirm(“Are you sure you want to remove ” + name + “?nThis will remove any widgets you have assigned to this sidebar.”);
    if(answer){
    //alert(‘AJAX REMOVE’);
    remove_sidebar(name,num);
    }else{
    return false;
    }
    }
    function add_sidebar_link(){
    var sidebar_name = prompt(“Sidebar Name:”,””);
    //alert(sidebar_name);
    add_sidebar(sidebar_name);
    }

    Custom Sidebars Generator

    The sidebar name is for your use only. It will not be visible to any of your visitors.
    A CSS class is assigned to each of your sidebar, use this styling to customize the sidebars.

    You can create how many sidebars you want and then go and <a href="”>Create or <a href="”>Edit a page and asign this custom sidebar. You can assign it even to a post or anything else just go to a page, post or theme options and find the otion to select a sidebar.The shortcode is provided optional in case if you need it. Is not necesary to use it.

    The sidebar will be added automaticaly to <a href="”>Widgets page

    <?php
    $sidebars = SidebarGenerator::get_sidebars();
    //$sidebars = array(‘bob’,’john’,’mike’,’asdf’);
    if(is_array($sidebars) && !empty($sidebars)){
    $cnt=0;
    foreach($sidebars as $sidebar){
    $alt = ($cnt%2 == 0 ? ‘alternate’ : ”);
    ?>
    <tr class="”>

    <?php
    $cnt++;
    }
    }else{
    ?>

    <?php
    }
    ?>

    NAME CSS CLASS SHORTCODE REMOVE
    side- [sidebar name=""] <a href="javascript:void(0);" onclick="return remove_sidebar_link('’,);” style=”font-weight: 700; color: #D50020″ title=”Remove this sidebar”>remove
    No Sidebars defined

    <?php
    }

    /**
    * Update
    *
    * This function update the array when a sidebar is added or removed
    *
    * @since 1.0
    */
    static function update_sidebars($sidebar_array){
    $sidebars = update_option(‘sbg_sidebars’,$sidebar_array);
    }

    /**
    * Get sidebars
    *
    * Get all sidebars created with SidebarGenerator
    *
    * @since 1.0
    */
    static function get_sidebars(){
    $sidebars = get_option(‘sbg_sidebars’);
    return $sidebars;
    }

    /**
    * Name to class
    *
    * Convert sidebar name to a css class
    *
    * @since 1.0
    */
    static function name_to_class($name){
    $class = str_replace(array(‘ ‘,’,’,’.’,'”‘,”‘”,’/’,”\”,’+’,’=’,’)’,'(‘,’*’,’&’,’^’,’%’,’$’,’#’,’@’,’!’,’~’,’`’,”,’?’,”,'{‘,’}’,’|’,’:’,),”,$name);
    return $class;
    }

    /**
    * All sidebars
    *
    * Get all sidebars, created with SidebarGenerator and already registered
    *
    * @since 1.0
    */
    function get_all_sidebars(){
    global $wp_registered_sidebars;

    $all_sidebars = ”;

    if ( $wp_registered_sidebars && ! is_wp_error( $wp_registered_sidebars ) ) :

    $sidebars_name = $generated_sidebars = array();

    foreach ( $wp_registered_sidebars as $sidebar ) {
    $sidebars_name[] = $sidebar; //get sidebar name
    }

    $generated_sidebars = SidebarGenerator::get_sidebars();

    if($sidebars_name || $generated_sidebars){

    if($sidebars_name && $generated_sidebars)
    {
    $all_sidebars = array_merge(
    array_combine($sidebars_name, $sidebars_name),
    array_combine($generated_sidebars, $generated_sidebars)
    );
    }
    else if($sidebars_name && ! $generated_sidebars)
    {
    $all_sidebars = array_combine($sidebars_name, $sidebars_name);
    }
    else if($generated_sidebars && ! $sidebars_name)
    {
    $all_sidebars = array_combine($generated_sidebars, $generated_sidebars);
    }
    else
    {
    $all_sidebars = array(‘No sidebars’);
    }

    } else {
    $all_sidebars = array(‘No sidebars’);
    }
    //$all_sidebars = array_combine($sidebars_name, $sidebars_name);

    endif;

    return $all_sidebars;
    }

    }//End of CLASS. If you remove this, your theme will die 🙂

    /* Class, do your job! */
    $sbg = new SidebarGenerator;//If you remove this the whole class will not work. Period!

    /* Give me a function to create a sidebar easy! */
    function smk_custom_dynamic_sidebar($name=’Default Sidebar’){
    if(function_exists(‘dynamic_sidebar’) && dynamic_sidebar($name)) :
    endif;
    return true;
    }

    /* I need a shortcode, also 😉*/
    // [sidebar name=”Default Sidebar”]
    function vw_sidebar_shortcode( $atts ) {
    extract( shortcode_atts( array(
    ‘name’ => ‘Default Sidebar’,
    ), $atts ) );

    smk_custom_dynamic_sidebar($name);
    }
    voilà pour la question 4! Je passe à la 3 à présent!

    #1033232
    annelise
    Participant
    Padawan WordPress
    96 contributions

    3- pour les pages php j’ai :

    modèle de page d’accueil php

    <div class="vw-page-wrapper clearfix “>

    modèle de page :

    <div class="vw-page-wrapper clearfix “>

    ID, ‘vw_page_subtitle’, true ); ?>

    <article >

    <?php wp_link_pages( array(
    ‘before’ => ‘

    ‘,
    ‘link_before’ => ‘‘,
    ‘link_after’ => ‘
    ‘,
    ) ); ?>

    modèle de page VW simple page composer :

    <?php
    /*
    Template Name: VW Simple Page Composer
    */
    get_header(); ?>

    Modèle de page Big Featured Image (page_big_featured_image.php) :

    <?php
    /**
    * Template Name: Big Featured Image
    */
    get_header(); ?>

    <div class="vw-page-wrapper clearfix “>

    <article >

    <?php wp_link_pages( array(
    ‘before’ => ‘

    ‘,
    ‘link_before’ => ‘‘,
    ‘link_after’ => ‘
    ‘,
    ) ); ?>

    #1033233
    annelise
    Participant
    Padawan WordPress
    96 contributions

    voilà je pense n’avoir rien oublié excepté sidebar footer que je n’ai pas mis car pas de souci de ce côté là!!!!
    j’hallucine je m’apprêtais à te dire “je te rappelle que lorsque j’essaie d’insérer ma sidebar au sein d’un article ça ne marche pas” puis, dans le doute j’ai réessayé j’ai mis ma sidebar dans mon article sur porquerolles et miracle ça fonctionne à présent! Je n’y comprends vraiment plus rien!!!!
    ça ne fonctionne malheureusement pas sur ma page d’accueil!!!!

15 sujets de 46 à 60 (sur un total de 122)
  • Vous devez être connecté pour répondre à ce sujet.