Wordpress-Widget wechselt ständig

Wordpress-Widget wechselt ständig

Ich arbeite als Webmaster bei einem kanadischen Unternehmen namens Atrium Innovations. Unsere Unternehmenswebsite läuft derzeit auf WordPress. Auf unserer WordPress-Version sind mehrere Plugins installiert, und eines davon wurde intern von einem früheren Webmaster erstellt.

Dieses Plugin zeigt Dokumente mithilfe eines Seitenleistenlayouts an und befindet sich im sekundären Seitenbedienfeld (Widgets).

Es hat sehr gut funktioniert, bis es anfing, ständig in die Zone „Inaktive Widgets“ zu wechseln, was es scheinbar aus dem sekundären Nebenfenster entfernt und online verschwinden lässt. Ich weiß nicht, warum es damit angefangen hat. Ich habe vielleicht etwas in der Datei functions.php geändert, aber ich bin mir nicht sicher, ob ich den Code geändert habe (habe die Datei, glaube ich, gerade geöffnet). Sicher ist, dass, wenn ich von „Darstellung“ zu einem beliebigen anderen Tab im Admin-Fenster wechsle und dann zum „Darstellung“-Tab zurückkehre, das Widget unweigerlich wieder im inaktiven Bereich erscheint, der aus dem sekundären Nebenfenster verschwunden ist.

Was könnte das Problem sein? Muss ich den Plugin-Code oder einen anderen Code in der Datei functions.php ändern, um das zu beheben?

Antwort1

Also gut, danke für das Feedback. Ich schätze, ich kann hier keine Datei anhängen und das Kopieren/Einfügen des gesamten PHP-Plugin-Codes wäre vielleicht etwas aufdringlich. Was schlagen Sie vor? Gibt es eine bewährte Vorgehensweise zum Posten von Code hier?

Das zugehörige Widget wird in der linken Spalte auf dieser Seite angezeigt:

http://atrium-innovations.com/en/investors/financial-documents/

Sie werden sehen, dass es mehrere Dateien gibt, beginnend mitJährliche Hauptversammlung.

Ich muss das unbedingt zum Laufen bringen, deshalb poste ich den Code des Plugins trotzdem:

http://jfverville.com * Beschreibung: Schnelle Links zu Investoren anzeigen * Version: 0.1 * Autor: JF Verville * Autor-URI:http://jfverville.com / // Hauptklasse class Investor_Snapshot extends WP_Widget { //Widget-Setup. function Investor_Snapshot() { /Widget-Einstellungen. */ $widget_ops = array( 'classname' => 'investor-snapshot', 'description' => __('Widget zum Anzeigen der Schnellzugriffe auf den Anlegerbereich', 'investor-snapshot') );

    /* Widget control settings. */
    $control_ops = array( 'width' => 300, 'height' => 350, 'id_base' => 'investor-snapshot' );

    /* Create the widget. */
    $this->WP_Widget( 'investor-snapshot', __('Apercu investisseurs', 'investor-snapshot'), $widget_ops, $control_ops );
}   
/**
 * Displays the widget settings controls on the widget panel.
 * Make use of the get_field_id() and get_field_name() function
 */
function form( $instance ) {
    /* Set up some default widget settings: ('Label par defaut', 'Val. par defaut) */
    $defaults = array('title' => __('Titre', 'titre'));
    $instance = wp_parse_args( (array) $instance, $defaults ); ?>
    <!-- Widget Title: Text Input -->
    <?php if ( ICL_LANGUAGE_CODE == "fr"): ?>
<p>&nbsp;</p>     <p>&nbsp;</p>   <p>&nbsp;</p>   <p>&nbsp;</p>      
     <h3>DOCUMENTS</h3>            
        <?php else: ?>
       <h3>DOCUMENTS</h3>
        <?php endif; ?>
<?php
}
/**
 * Update the widget settings.
 */
function update( $new_instance, $old_instance ) {
    $instance = $old_instance;

    /* Strip tags to remove HTML (important for text inputs). */
    $instance['title'] = strip_tags( $new_instance['title'] );
    return $instance;
}
/**
 * How to display the widget on the screen.
 */
function widget( $args, $instance ) {
    extract( $args );       
    // Use wp_list_pages to display parent and all child pages all generations (a tree with parent)
    $ancestors=get_post_ancestors(get_the_id());
    $parent = ($ancestors[sizeof($ancestors)-1] == "") ? get_the_id() : $ancestors[sizeof($ancestors)-1];
    $type_page = get_post_type();
    /* Our variables from the widget settings. */
    $title = apply_filters('widget_title', $instance['title'] );
    /* Before widget (defined by themes). */
    echo $before_widget;
    /* Display the widget title if one was input (before and after defined by themes). */
    if ( $title )
        echo $before_title . $title . $after_title;
    /* Start of the widget's core */
    if(ICL_LANGUAGE_CODE == "fr"){
    ?>
    <ul>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentations-et-evenements/AGM-2012-ATRIUM-FR.pdf" target="_blank">Assemblée annuelle des actionnaires</a></li>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentations-et-evenements/20120810_analyst_presentation_q2_2012.pdf" target="_blank">Présentation trimestrielle (anglais seulement)</a></li>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentations-et-evenements/ATR_FS12_Q2_fr_v3FINAL.pdf" target="_blank">Fiche aux investisseurs</a></li>
    <li class="lien_ext"><a href="http://www.atrium-innovations.com/brochure_fr/" target="_blank">Brochure corporative</a></li>
    </ul>
    <?php
    } else {
    ?>
    <ul>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentation-and-events/AGM-2012-ATRIUM-EN.pdf" target="_blank">Annual General Meeting</a></li>
     <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentation-and-events/20120810_analyst_presentation_q2_2012.pdf" target="_blank">Quarterly Presentation</a></li>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentation-and-events/ATR_FS12_Q2_en_v3FINAL.pdf" target="_blank">Investor Fact Sheet</a></li>
    <li class="lien_pdf"><a href="<?php echo get_stylesheet_directory_uri(); ?>/uploads/documents/presentation-and-events/ATB-Investor-Presentation-August2012-Final.pdf" target="_blank">Investor Presentation</a></li>
    <li class="lien_ext"><a href="http://www.atrium-innovations.com/brochure_en/" target="_blank">Corporate Brochure</a></li>
    </ul>       
    <?php
    }
    /* End of the widget's core */
    /* After widget (defined by themes). */
    echo $after_widget;
}

} //Fügen Sie widgets_init eine Funktion hinzu, die unser Widget lädt. add_action( 'widgets_init', 'load_Investor_Snapshot' );

//Registrieren Sie unser Widget. Funktion load_Investor_Snapshot() { register_widget( 'Investor_Snapshot' ); }

Danke noch einmal

verwandte Informationen