Как проверить существование страницы по URL?

11 сент. 2014 г., 00:02:41
Просмотры: 15.9K
Голосов: 9

Мне нужно отображать определённый контент в зависимости от того, существует URL страницы или нет. Я не хочу проверять по заголовку, так как некоторые страницы могут иметь одинаковые заголовки, но разные родительские страницы.

Например, страница может иметь адрес:

  1. http://example.com/analysis/firstNamelastName
  2. http://example.com/exercise/firstNamelastName

Мне просто нужно узнать, существует ли один из этих URL или нет.

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

анализ и упражнение — это категории? Я не уверен, что ваш подход оптимален, и пытаюсь понять, что вы хотите

Tomás Cot Tomás Cot
11 сент. 2014 г. 00:48:01
Все ответы на вопрос 1
1
10

Вы можете создать список путей для проверки...

$page_paths = array(
    'analysis/firstNamelastName',
    'exercise/firstNamelastName'
);

Затем проверить, существует ли объект страницы для каждого из путей.

foreach( $page_paths as $page_path ) {

    echo '<code>' . $page_path . '</code> ' . PHP_EOL;

    if( ! $page = get_page_by_path( $page_path ) ){
        echo 'Не существует.' . PHP_EOL;
    } else{
        echo 'Существует и ведет на: <code>' . get_permalink( $page->ID ) . '</code>' . PHP_EOL;
    }  

}

Функцию get_page_by_path(); можно использовать и для других типов записей, а не только для страниц. Смотрите третий параметр.

11 сент. 2014 г. 01:19:55
Комментарии

Есть ли что-то подобное, но для мультисайта?

chifliiiii chifliiiii
29 окт. 2020 г. 17:39:17