Как получить URL страницы по её ID?
Я пытался использовать get_page_link('page-id') и get_permalink('page-id'), но возникла следующая ошибка.
Фатальная ошибка: Вызов метода get_page_permastruct() для null в ...
Как получить URL страницы, зная только её ID?

Вы, вероятно, получаете эту ошибку, потому что WordPress по какой-то причине ещё не загрузил глобальную переменную $wp_rewrite. Либо что-то её деактивировало, либо вы пытаетесь выполнить эти функции до того, как WordPress успеет её загрузить.
Если вы пытаетесь сделать это в плагине или в файле functions.php вашей темы, убедитесь, что вы находитесь внутри функции, которая подключена к хуку after_setup_theme или хуку, который выполняется позже. Например:
function get_url_of_page_id_165() {
return get_permalink( 165 );
}
add_action( 'after_setup_theme', 'get_url_of_page_id_165' );

OP сказал, что уже пробовал get_page_link и get_permalink, и это не сработало. Так что я думаю, вопрос действительно заключается в объяснении сообщения об ошибке, а не в том, какой API вызывать.
