Изменить постоянную ссылку, используя PHP в Wordpress на одной странице - PullRequest
1 голос
/ 22 апреля 2020

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

Постоянная ссылка установлена ​​в WordPress: This is the permalink set in WordPress

Фактический URL-адрес включен страница: Actual URL on the page

Поэтому, если кто-то поделится этой страницей, я хочу отправить действительный URL (https://www.prinsauto.nl/vakgarage-aanbod-details/audi-a6-avant...), но не постоянную ссылку. Опять же, фактический URL-адрес встроен в файл PHP.

Как я могу это сделать?

1 Ответ

0 голосов
/ 23 апреля 2020

WordPress не очень прост, когда речь заходит о пользовательских URL. Просмотр кода файла template-loader.php показывает, что вы можете использовать файл шаблона для запуска функциональности вашей страницы.

Как видно из кода (строка 77), вы можете использовать фильтр template_include в вашем плагине (или файл functions.php шаблона), чтобы проверить заданный вами c "маршрут" и вернуть файл шаблона для загрузки.

Пример:

add_filter('template_include', 'your_function_name', 0, 1);

function your_function_name($template) {
  $uri = $_SERVER['REQUEST_URI'];
  if (strpos($uri, 'vakgarage-aanbod-details') !== false) {
    return 'template-file-name.php';
  }
  else {
    return false;
  }
}

Все PHP logi c, которые вы описали в своем вопросе, должны go во включенном файле шаблона.

...