簡體   English   中英

將自定義正文 class 添加到自定義存檔頁面

[英]Adding custom body class to the custom archive pages

我創建了兩個自定義存檔頁面: archive-one.phparchive-two.php 存檔頁面放置在我的主題的主目錄中。 現在我要做的是向它們中的每一個添加一個自定義主體 class ,例如“archive-one”和“archive-two”。

我試圖用以下代碼做到這一點,但沒有運氣:

function archive_class_1( $classes ) {
    if ( is_page_template( 'archive-one.php' ) ) {
        $classes[] = 'archive-one';
    }
    return $classes;
}
add_filter( 'body_class', 'archive_class_1' );

確認這已添加到您的主題functions.php 接下來,您可以對兩個自定義存檔文件使用相同的 function(參見下面的示例)。 您的自定義模板文件是位於主題的根目錄還是子文件夾? 如果在子文件夾中,您需要將該路徑添加到您的檢查中,如下例所示。 還要確認您的主題正在使用<?php body_class(); ?> <?php body_class(); ?> function 在您的主題上打開<body>標簽(類似於<body <?php body_class(); ?>> )?

主題根目錄下的自定義文件

function my_archive_class( $classes ) {
    if ( is_page_template( 'archive-one.php' ) ) {
        $classes[] = 'archive-one';
    }

    if ( is_page_template( 'archive-two.php' ) ) {
        $classes[] = 'archive-two';
    }
    return $classes;
}
add_filter( 'body_class', 'my_archive_class' );

子文件夾“模板”主題中的自定義文件

function my_archive_class( $classes ) {
    if ( is_page_template( 'templates/archive-one.php' ) ) {
        $classes[] = 'archive-one';
    }

    if ( is_page_template( 'archive-two.php' ) ) {
        $classes[] = 'templates/archive-two';
    }
    return $classes;
}
add_filter( 'body_class', 'my_archive_class' );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM