Cómo enlazar a una página .php personalizada en mi carpeta

21 feb 2017, 18:38:06
Vistas: 20.4K
Votos: 3

He creado una página personalizada que he llamado mypage.php.

Está en mi carpeta de plantilla junto con todas las otras páginas (index.php, page.php, ...)

Quiero que esta página se abra cuando hago clic en el siguiente código.

<a href="<?php site_url(); ?>/mypage.php">Ir a la página</a>

Cuando hago clic en el enlace, la URL en mi navegador se ve así: http://localhost:8888/mypage.php lo cual supongo que es correcto.

PERO usa index.php como plantilla ignorando el código que tengo en mypage.php

Así que por el momento solo estoy obteniendo una página vacía con solo mi encabezado y pie de página.

¿Es posible usar páginas de esta manera con WordPress? He buscado en línea y en este sitio pero no he podido encontrar una solución para este problema.

3
Comentarios

¿Cuál es el propósito de esa página? Quiero decir, ¿por qué no simplemente crear una página dentro de WordPress?

Laxmana Laxmana
21 feb 2017 18:45:21

@Laxmana Porque tengo algún código personalizado ahí para crear un PDF a partir de html. Paso un ID a través de la URL, luego uso ese ID para encontrar la página que quiero convertir y utilizo algún código para convertir el html en PDF. ¡Por favor, avísame si no he sido lo suficientemente claro!

Martina Sartor Martina Sartor
21 feb 2017 18:48:13

Puedes hacerlo a través de páginas de plantillas personalizadas de WordPress o endpoints de WordPress

Laxmana Laxmana
21 feb 2017 18:52:36
Todas las respuestas a la pregunta 3
1

WordPress no carga las plantillas de esa manera.

Primero: asigna un nombre a la plantilla:

Para cargar una plantilla de página, primero debes asegurarte de que tu plantilla tenga un nombre. Para hacerlo, debes incluir el siguiente CÓDIGO en tu archivo de plantilla (en este caso mypage.php):

<?php
/**
 * Template Name: Mi Página
 */

Una vez que tengas el comentario PHP anterior, WordPress lo reconocerá como un archivo de plantilla.

Luego, asigna la plantilla a una página:

Ahora debes crear una página en WordPress (desde wp-admin).

Mientras creas la página, WordPress te dará la opción de elegir una plantilla personalizada (si existe alguna). Después de seleccionar la plantilla y hacer clic en Publicar, esa página utilizará tu archivo mypage.php como plantilla.

Añadir Plantilla de Página

21 feb 2017 18:50:40
Comentarios

¡Gracias! ¡Esto es perfecto! Todavía necesito crear la página desde wp-admin para que funcione una plantilla personalizada. ¡Esto funcionó perfectamente!

Martina Sartor Martina Sartor
21 feb 2017 18:56:45
4

@Martina Sartor, puedes utilizar el proceso de plantillas personalizadas de WordPress. Agrega el siguiente comentario al archivo que deseas convertir en tu página personalizada. Luego, ve al área de administración y crea una página, y selecciona tu plantilla personalizada para esa página.

Por favor revisa

<?php 
/*
Template Name: Diseño de ancho completo
Template Post Type: post, page, event
*/
// Código de la página aquí...

menciona el nombre de tu plantilla aquí

También puedes revisar la documentación de WordPress para lo mismo.

https://developer.wordpress.org/themes/template-files-section/page-template-files/

21 feb 2017 18:48:48
Comentarios

Gracias, lo intenté y lo he vuelto a intentar ahora mismo pero no funciona. El enlace sigue redirigiéndome a index.php

Martina Sartor Martina Sartor
21 feb 2017 18:51:28

Te había proporcionado la misma solución pero no te funcionó. Cuando alguien más lo hizo, te funcionó... ¡genial!..!!

shishir mishra shishir mishra
21 feb 2017 19:11:03

@shishirmishra Te entiendo, a mí también me ha pasado :) Pero supongo que la respuesta aceptada lo explicó mejor + quizás la captura de pantalla ayudó. De todos modos, +1 de mi parte para futura motivación :)

Scott Scott
21 feb 2017 19:41:01

@scott, también he incluido la url para información más detallada. Gracias

shishir mishra shishir mishra
21 feb 2017 20:02:33
0

Lo que estás buscando hacer es insertar archivos PHP personalizados dentro de tu tema, pero lamentablemente WordPress no te permitirá usar archivos .php fácilmente. Afortunadamente, ofrece una alternativa más eficiente para incluir archivos .php.

WordPress proporciona la función get_template_part y las plantillas de página personalizadas. Puedes utilizar estos métodos en su lugar.

La respuesta anterior ha explicado las plantillas de página, y además de eso, puedes incluir tus archivos PHP personalizados en esa plantilla o en cualquier otro lugar utilizando la función get_template_part. Esto funciona igual que las funciones nativas de PHP require o include.

Plantilla

<?php
/**
 * Template Name: Mi plantilla de página
 */

El archivo PHP que se incluirá, por ejemplo, es some-file.php dentro de la carpeta raíz. Entonces escribirías:

get_template_part( 'some', 'file' );
21 feb 2017 19:13:52