it-swarm.com.de

So laden Sie verschiedene CSS-Dateien für verschiedene Seiten

Ich habe mehrere verschiedene Seiten. Jeder von ihnen hat verschiedene CSS-Links. Anstelle der CSS-Links sind alle Elemente im head-Element dieser Seiten identisch. Ich muss dieses head-Element auf header.php verschieben, damit ich head mit get_header() einbinden kann.

Wie kann ich verschiedene CSS-Dateien für verschiedene Seiten laden? Ich habe ungefähr 20 verschiedene Seiten, daher ist das Laden der Datei nach der Zustandsprüfung für mich etwas chaotisch.
Gibt es einen besseren Ansatz als das ?
Schlagen Sie mir nach Möglichkeit vor, dieses Problem mithilfe eines benutzerdefinierten Plugins zu lösen?

Seite 1:

<html lang="en">
<head>
     <link rel="stylesheet" href="css/one.css" />
     .......
 </head>

Seite 2:

<html lang="en">
<head>
     <link rel="stylesheet" href="css/two.css" />
     .......
 </head>
1
unreleased

Sie können dies mit conditionals in der Funktion erreichen, die Ihre Stile einreiht.

function wpdocs_theme_name_scripts() {
    wp_enqueue_style( 'global', get_stylesheet_uri() );

    if ( is_page(5) ) {
      wp_enqueue_style( 'page-five', get_stylesheet_uri() . '/page-five-styles.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'wpdocs_theme_name_scripts' );

Wenn Sie mehr Kontrolle über das Markup Ihrer Seite und die von Ihnen geladenen CSS-Dateien haben möchten, können Sie die Vorlagenhierarchie von WordPress verwenden und eine Seitenvorlage oder etwas Spezielleres wie page-5.php erstellen. Durch Aufrufen von wp_enqueue_scripts aus diesen Vorlagendateien werden nur die Assets für diese Seiten geladen.

3
Andrew

Wenn Sie dies in Ihrer Vorlage tun möchten, können Sie Folgendes tun.

Weitere Informationen zur Funktion is_page erhalten Sie hier: https://developer.wordpress.org/reference/functions/is_page/

<html lang="en">
<head>
     <?php if ( is_page(1) ): //Change this number to id of page ?> 
     <link rel="stylesheet" href="css/one.css" />
     <?php endif; if ( is_page(2) ): //Change this number to id of page ?>
     <link rel="stylesheet" href="css/two.css" />
     <?php endif; ?>
 .......
</head>
1
Liam Stewart
<html lang="en">
    <head>
<?php global $post;
if( $post->ID == 346) { ?>
       <link rel="stylesheet" href="css/one.css" />
<?php } ?>
    elseif ( $post->ID == 342){ ?> 
         <link rel="stylesheet" href="css/two.css" />
         <?php } else{ //Change this number to id of page ?>
         <link rel="stylesheet" href="css/three.css" />
         <?php } ?>
     .......
    </head>
0