Me encontré con el problema de ocultar el encabezado en las páginas de un directorio particular en WordPress CMS.

¿Es posible hacer una condición de código php que no muestre el encabezado en todas las páginas en algún directorio por condición:

Como

<?php if( $some_page => have 'users' in $url ) : ?>
    <header style="display:none"></header>
<?php else......
<?php endif....

PD

Sé de un gran complemento para css magic en cualquier página, pero tengo demasiadas páginas ...

0
Sviat Kuzhelev 15 ene. 2018 a las 18:28

3 respuestas

La mejor respuesta

Encontré una solución simple para esto:

Podemos hacer una búsqueda simple en la url del símbolo o frase en ella, con la función stristr(). Entonces la condición será la siguiente:

<?php $current_page = get_page_link() ?>

<?php if (stristr($current_page, "user") == true) : ?>              // if "url" have 
    <h1 class="entry-title h1" style="display:none;"></h1>          // phrase 'user' 
<?php else : ?>                                                     // in it the header will not show
    <?php the_title( '<h1 class="entry-title h1">', '</h1>' ); ?>   // header 
    <h1 class="entry-title h1"></h1>                                // show without any problem
<?php endif; ?>
1
Ylama 7 feb. 2018 a las 15:49

Solución CSS

Digamos que su página de inicio body clase: <body class="index"> y su encabezado <header class="page-header">text</header>

Puede usar esta clase para mostrar el encabezado o no, usando este método.

body:not(.index) .page-header { display: none; }  

Espero que ayude.

1
Ylama 15 ene. 2018 a las 15:46

He hecho algunas ediciones en tu respuesta.

    <?php $current_page = get_page_link() ?>

    <?php if (stristr($current_page, "user") === false) : ?> 
    <?php the_title( '<h1 class="entry-title h1">', '</h1>' ); ?>   
    <?php endif; ?>
//If you don't want to render anything on true condition no need to render anything.

Use === para verificar los tipos también.

0
Krishnadas PC 15 ene. 2018 a las 16:42