it-swarm.com.de

Wie werden Dateien mit eigenen JQuery-Skripten und CSS korrekt in das Wordpress TwentyTen-Thema aufgenommen?

Ich möchte einen Schieberegler in das Standard-Wordpress-Design auf der Homepage aufnehmen. Ich habe es geschafft, die Seite mit <?php if ( is_home() ) { include ('slider.php'); } ?> zum Anzeigen zu bringen, aber es sieht nicht so aus, als würde es das benötigte jquery-Skript oder das Stylesheet laden. Ich weiß, dass es einen Konflikt mit Skripten und Wordpress gibt, ich weiß nur nicht, wie ich es zum Laufen bringen kann.

Die Beispielseite befindet sich unter http://axiomwest.com/

Wie füttert man eine Seite mit einem eigenen Stylesheet und eigenen Skripten?

1

UPDATE! Ich habe nur den Schieberegler eingefügt, den ich verwenden wollte. Ich habe die jquery-Skripte, die diese Seite benötigt, mit der Methode <?php bloginfo('template_directory'); ?> verknüpft. Ich habe bemerkt, dass es ein paar Sekunden dauert, um diesen Teil der Seite zu laden, aber es funktioniert. Ich denke immer noch, dass dies verbessert werden kann, aber mit zeitlichen Einschränkungen wird es genügen müssen. Vielen Dank für Ihre Kommentare und Ihre Hilfsbereitschaft!

0

Sie müssen das Skript in einer separaten Datei haben (normalerweise wäre es filename.js; ich nehme an, filename.php würde funktionieren?).

Anschließend müssen Sie diese Skriptdatei mit wp_register_script() und wp_enqueue_script() registrieren und in die Warteschlange stellen.

z.B.:

function mytheme_register_custom_scripts() {
    if ( ! is_admin() ) {
        $scriptsrc = get_stylesheet_directory_uri() . '/scripts/filename.js';
        wp_register_script( 'mytheme_slider', $scriptsrc );
    }
}
add_action( 'after_setup_theme', 'mytheme_register_custom_scripts' );

function mytheme_enqueue_custom_scripts() {
    if ( is_home() ) {
        wp_enqueue_script( 'mytheme_slider' );
    }
}
add_action( 'wp_enqueue_scripts', 'mytheme_enqueue_custom_scripts' );

Beachten Sie, dass die Registrierung des Skripts unter after_setup_theme erfolgen sollte, aber is_home() an diesem Punkt nicht verfügbar sein wird. Aus diesem Grund müssen Sie die Enqueueing-Funktion trennen, damit sie sich in wp_head einhakt. Zu welchem ​​Zeitpunkt is_home() verfügbar ist.

3
Chip Bennett