@Anonimmus

Как изменить ЧПУ GUID на читабельный?

На сайте в даный момент отображается ссылка вида Сайт / ?page_id=146 потому что я вытаскивал адрес ссылки the_permalink() в моем случае ведет на страницу категорий а не на запись.
Подскажите пж как привести его в вид Сайт / ?/nashi-uslugi/asfaltirovanie/asfaltirovanie-dvorov/

<? 
$stati_children = new WP_Query(array('post_type' => 'page',  'orderby' => [ 'meta_value_num'=>'DESC' ],  'post_parent' => 66 ) );

if($stati_children->have_posts()) :
	while($stati_children->have_posts()): $stati_children->the_post();  ?>
 
		<div class="block-uslug col-c-3 col-mc-3 col-t-2 col-m-2"> 
<div class="block-usluga">
							<div class="uslugi">
								<span class="title4"><? the_title() ?></span>
						 <p></p>
 
								<? echo the_field('ikonka_svg'); ?>
								<? $menyu_podkategorij = get_field('menyu_podkategorij'); 
								if(!empty($menyu_podkategorij)) {
								foreach ($menyu_podkategorij as $key => $value) { ?>
							 
								<a href="<? echo $value->guid; ?>" class="__link crop-text"><? echo $value->post_title; ?></a><br/>  
								
								<? }
							}
								?>
							 
				</div>
</div>
		</div>
	<? endwhile;
  endif; wp_reset_query();
?>

Развернутые данные через print_r выглядят так:
WP_Post Object
(
    [ID] =&gt; 146
    [post_author] =&gt; 1
    [post_date] =&gt; 2021-07-12 17:12:45
    [post_date_gmt] =&gt; 2021-07-12 14:12:45
    [post_content] =&gt; 
    [post_title] =&gt; Асфальтирование дворов
    [post_excerpt] =&gt; 
    [post_status] =&gt; publish
    [comment_status] =&gt; closed
    [ping_status] =&gt; closed
    [post_password] =&gt; 
    [post_name] =&gt; asfaltirovanie-dvorov
    [to_ping] =&gt; 
    [pinged] =&gt; 
    [post_modified] =&gt; 2021-07-23 11:36:03
    [post_modified_gmt] =&gt; 2021-07-23 08:36:03
    [post_content_filtered] =&gt; 
    [post_parent] =&gt; 68
    [guid] =&gt; https://asfalt.trade/?page_id=146
    [menu_order] =&gt; 0
    [post_type] =&gt; page
    [post_mime_type] =&gt; 
    [comment_count] =&gt; 0
    [filter] =&gt; raw
)
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
guid используется вообще не для этого. Это поле создается один раз при публикации поста для идентификации записи в RSS ленте. По этому полю парсеры RSS определяют обрабатывали они запись или нет.

Структура ссылок задается в настройках Настройки → Постоянные ссылки. Получить ссылку можно по id поста в цикле с помощью get_permalink()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы