Как мне вызвать соответствующие CSS-файлы разных страниц Elementor, которые будут отображаться в случайном массиве, отображающем разные страницы при каждом обновлении?

У меня есть веб-сайт Wordpress, созданный с помощью Elementor, на котором я хотел бы показывать новую домашнюю страницу при каждом обновлении пользователей.

Для этого я создал разные страницы (home1, home2, [...] home9) и установил в качестве домашней страницы в Wordpress страницу под названием «Случайные домашние страницы», на которой используемый шаблон представляет собой собственный шаблон, созданный с помощью этого кода:

      <?php
/*
 * Template Name: Random Homepage
 */

// Define an array of homepage slugs
$homepages = array('home1', 'home2', 'home3', 'home4', 'home5', 'home6', 'home7', 'home8', 'home9');

// Get a random slug from the array
$randomSlug = $homepages[array_rand($homepages)];

// Query the content of the randomly selected homepage
$homepage_query = new WP_Query(array('pagename' => $randomSlug));

// Check if the query has content
if ($homepage_query->have_posts()) :
    while ($homepage_query->have_posts()) :
        $homepage_query->the_post();
        // Display the content of the selected homepage
        the_content();
    endwhile;
else :
    // Handle the case where the page doesn't exist
    echo 'Homepage not found.';
endif;

// Reset post data
wp_reset_postdata();
?>

Это работает, при каждом обновлении моего веб-сайта «www.fofain.it» отображается другая домашняя страница (на данный момент я создал только home1 и home2 для тестирования), но CSS не загружается. Как мне вспомнить это в PHP? Я предполагаю, что CSS генерируется самим Elementor где-то в папках темы.

Не могли бы вы мне помочь, пожалуйста?

Я попробовал запросить ChatGPT, мне предложили добавить:

       // Get the slug of the randomly selected homepage
    $selected_homepage_slug = $randomSlug;

    // Generate the CSS file name based on the selected homepage slug
    $css_file_name = 'style-' . $selected_homepage_slug . '.css';

    // Get the URL of the CSS file
    $css_file_url = get_template_directory_uri() . '/path/to/css/' . $css_file_name;

    // Output the CSS file link in the HTML head
    echo '<link rel="stylesheet" type="text/css" href="' . esc_url($css_file_url) . '">';

но в поисках пути к файлам CSS, который нужно заменить вместо «/path/to/css», я заблудился, потому что для всех файлов CSS слишком много разных путей.

0 ответов

Другие вопросы по тегам