Как сделать ссылку на пользовательскую .php страницу в моей папке

21 февр. 2017 г., 18:38:06
Просмотры: 20.4K
Голосов: 3

Я создал пользовательскую страницу, которую назвал mypage.php.

Она находится в папке моей темы вместе с другими страницами (index.php, page.php, ...)

Я хочу, чтобы эта страница открывалась при клике на код ниже.

<a href="<?php site_url(); ?>/mypage.php">Перейти на страницу</a>

Когда я кликаю на ссылку, URL в браузере выглядит так: http://localhost:8888/mypage.php, что вроде бы правильно.

НО система использует index.php в качестве шаблона, игнорируя код, который находится в mypage.php

Так что сейчас я получаю пустую страницу, на которой отображаются только шапка и подвал.

Возможно ли использовать страницы таким образом в WordPress? Я искал решение в интернете и на этом сайте, но не смог найти решение этой проблемы.

3
Комментарии

Какова цель этой страницы? Я имею в виду, почему бы просто не создать страницу в WordPress?

Laxmana Laxmana
21 февр. 2017 г. 18:45:21

@Laxmana Потому что у меня там есть пользовательский код для создания PDF из HTML. Я передаю ID через URL, затем использую этот ID, чтобы найти страницу, которую хочу конвертировать, и применяю код для преобразования HTML в PDF. Дайте мне знать, если объяснил недостаточно понятно!

Martina Sartor Martina Sartor
21 февр. 2017 г. 18:48:13

Вы можете сделать это через пользовательские шаблоны страниц WordPress или WordPress endpoints

Laxmana Laxmana
21 февр. 2017 г. 18:52:36
Все ответы на вопрос 3
1

WordPress не загружает шаблоны таким образом.

Во-первых: дайте шаблону имя:

Чтобы загрузить шаблон страницы, сначала необходимо убедиться, что у вашего шаблона есть имя. Для этого в файле шаблона (например, mypage.php) должен быть следующий код:

<?php
/**
 * Имя шаблона: Моя Страница
 */

Как только вы добавите этот PHP-комментарий, WordPress распознает файл как шаблон.

Затем назначьте шаблон странице:

Теперь вам нужно создать страницу в WordPress (через wp-admin).

При создании страницы WordPress предоставит вам возможность выбрать пользовательский шаблон (если он есть). После выбора шаблона и нажатия на кнопку Опубликовать эта страница будет использовать ваш файл mypage.php в качестве шаблона.

Добавление шаблона страницы

21 февр. 2017 г. 18:50:40
Комментарии

Спасибо. Это идеально! Мне всё ещё нужно создать страницу через wp-admin, чтобы заработал пользовательский шаблон! Это сработало отлично!

Martina Sartor Martina Sartor
21 февр. 2017 г. 18:56:45
4

@Martina Sartor, вы можете использовать процесс создания пользовательского шаблона в WordPress. Добавьте следующий комментарий в файл, который хотите сделать своим пользовательским шаблоном страницы. Затем перейдите в админ-панель, создайте страницу и выберите ваш пользовательский шаблон для этой страницы.

Пожалуйста, ознакомьтесь:

<?php 
/*
Template Name: Шаблон на всю ширину
Template Post Type: post, page, event
*/
// Код страницы здесь...

Укажите название вашего шаблона здесь

Вы также можете изучить документацию WordPress по этой теме.

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

21 февр. 2017 г. 18:48:48
Комментарии

Спасибо, я пробовал это и только что попробовал снова, но это не работает. Ссылка продолжает перенаправлять меня на index.php

Martina Sartor Martina Sartor
21 февр. 2017 г. 18:51:28

Я предлагал вам то же решение, но оно не сработало для вас. Когда кто-то другой предложил, у вас заработало... Отлично..!!

shishir mishra shishir mishra
21 февр. 2017 г. 19:11:03

@shishirmishra Я понимаю тебя, со мной тоже такое бывало :) Думаю, принятый ответ был объяснен лучше + возможно помогла скриншот. В любом случае, +1 от меня для будущей мотивации :)

Scott Scott
21 февр. 2017 г. 19:41:01

@scott, я также указал URL для получения более подробной информации. Спасибо.

shishir mishra shishir mishra
21 февр. 2017 г. 20:02:33
0

То, что вы пытаетесь сделать - это вставка пользовательских PHP файлов в вашу тему, но, к сожалению, WordPress не позволяет легко использовать файлы .php. К счастью, он предоставляет альтернативный и более эффективный способ подключения .php файлов.

WordPress предоставляет функцию get_template_part и custom page templates (пользовательские шаблоны страниц). Вы можете использовать эти методы вместо прямого подключения файлов.

В предыдущем ответе объяснялись шаблоны страниц, и в дополнение к этому вы можете использовать свои пользовательские PHP файлы, включенные в этот шаблон или где-либо еще, используя функцию get_template_part. Она работает так же, как нативные PHP функции require или include.

Шаблон

<?php
/**
 * Template Name: Мой шаблон страницы
 */

Например, PHP файл для подключения - это some-file.php внутри корневой папки. Тогда вы напишете:

get_template_part( 'some', 'file' );
21 февр. 2017 г. 19:13:52