2017-10-10 1 views
1

Ceci est un template WP fait à partir de zéro.Wordpress/PHP: if() {} ne fonctionne pas avec is_page()

J'ai ceci à l'intérieur de la tête :

<?php 

    if (is_page(about-contact)) { 
     $cssDirectory = get_stylesheet_directory_uri(); 
     echo "<link rel='stylesheet' href='" . $cssDirectory . "/scss/onepage-scroll.css'/>"; 
    } else { 
     echo ''; 
    } 

    ?> 

Il y a un autre comme ça pour un script au bas du corps .

Cependant, il se comporte comme si c'était toujours vrai pour chaque page que j'ai fait un modèle. Le seul qui ne tire pas les lignes php css et script est la page du blog, qui ne contient aucun modèle.

Comment puis-je le faire fonctionner pour une seule page (page-home.php, dans ce cas)?

+4

'is_page (environ contact)' -> 'is_page ('about contact')'? – Ivar

+0

J'ai essayé is_page ('page-home') car c'est le fichier php du template, mais ça n'a pas fonctionné. Quel nom de page exact dois-je utiliser? –

Répondre

1

is_page() nécessite un entier, une chaîne ou un tableau en entrée. Dans votre cas, il semble que vous voulez fournir la limace de la page, qui devrait être entre guillemets:

if (is_page('about-contact')) {... 

Si vous essayez de détecter la première page, utilisez is_front_page() au lieu de is_page()

Source: is_page(), is_front_page()

1

Hugo Je pense que vous venez de faire une erreur de grammaire. Vous devez utiliser

is_page('about-contact') 

Au lieu de:

is_page(about-contact) 
+0

J'ai essayé is_page ('page-home') car c'est le fichier php du modèle, mais cela n'a pas fonctionné. Quel nom de page exact dois-je utiliser? –

+0

@HugoMoutinho utiliser la page slug, pas le nom du modèle – Spartacus

+0

@Spartacus dans ce cas, c'est la première page, donc je ne suis pas sue quoi utiliser –