Cómo resaltar la página actual en el menú de navegación de WordPress

Cómo crear una página cuando el tema está activado

Extractos de IsItWP

¿Está buscando una forma de crear automáticamente una o más páginas al activar el tema? Si bien probablemente haya un complemento para esto, hemos creado un fragmento de código rápido que puede usar para crear una nueva página en WordPress.

Si desea que su tema o complemento cree una nueva página (o dos o tres) por sí solo, aquí hay un código rápido para hacerlo. wp_insert_post devuelve el ID de la página recién creada. En caso de error, devolverá 0 si $wp_error se establece en falso, o WP_Error objeto si $wp_error se establece en verdadero.

Instrucciones:

Todo lo que necesita hacer es agregar este código al archivo index.php de su tema encima del gancho.

Y, por supuesto, este código se puede utilizar para crear un POST o cualquier otro contenido de tipo de publicación personalizada simplemente cambiando el valor de post_type.


<?php
$new_page = array(
	'slug' => 'this-is-my-new-page',
	'title' => 'Write a Headline that Captivates',
	'content' => "Enter the body Content for your Page here"
);
$new_page_id = wp_insert_post( array(
	'post_title' => $new_page['title'],
	'post_type' 	=> 'page',
	'post_name'	 => $new_page['slug'],
	'comment_status' => 'closed',
	'ping_status' => 'closed',
	'post_content' => $new_page['content'],
	'post_status' => 'publish',
	'post_author' => 1,
	'menu_order' => 0
));
?>

O puede usar este código en su lugar. Este fragmento de código comprueba si ya existe una página con el título en la línea 3 y crea la página si aún no existe. También define una plantilla de página si se proporciona una plantilla de página en la fila 5.

Todo lo que necesita hacer es agregar este código al archivo functions.php de su tema o en un complemento específico del sitio:


if (isset($_GET['activated']) && is_admin()){
 
    $new_page_title="This is the page title";
    $new_page_content="This is the page content";
    $new_page_template=""; //ex. template-custom.php. Leave blank if you don't want a custom page template.
 
    //don't change the code bellow, unless you know what you're doing
 
    $page_check = get_page_by_title($new_page_title);
    $new_page = array(
        'post_type' => 'page',
        'post_title' => $new_page_title,
        'post_content' => $new_page_content,
        'post_status' => 'publish',
        'post_author' => 1,
    );
    if(!isset($page_check->ID)){
        $new_page_id = wp_insert_post($new_page);
        if(!empty($new_page_template)){
            update_post_meta($new_page_id, '_wp_page_template', $new_page_template);
        }
    }
 
}

Notar: Si es la primera vez que agrega fragmentos en WordPress, consulte nuestra guía sobre cómo agregar fragmentos correctamente en WordPress, para que no rompa accidentalmente su sitio.

Si le gustó este fragmento de código, consulte nuestros otros artículos en el sitio, como: 27 mejores temas de WordPress para blogs de viajes y cómo proteger sus formularios de WordPress.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba